.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.ComputeHash()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rcx,[rbx+298]
xor       edx,edx
call      qword ptr [7FF9F62ACE28]; DotNetTips.Spargine.Extensions.StringExtensions.ComputeHash(System.String, DotNetTips.Spargine.Extensions.HashType)
mov       [rsp+28],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.StringExtensions.ComputeHash(System.String, DotNetTips.Spargine.Extensions.HashType)
push      rbp
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbx
sub       rsp,40
lea       rbp,[rsp+70]
xor       eax,eax
mov       [rbp-48],rax
mov       [rbp-38],rax
mov       [rbp-50],rsp
mov       rbx,rcx
mov       esi,edx
test      rbx,rbx
je        near ptr M01_L23
mov       rcx,offset MT_System.CharEnumerator
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       dword ptr [rdi+10],0FFFFFFFF
lea       rcx,[rdi+8]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
mov       r14d,[rdi+10]
inc       r14d
mov       ecx,r14d
mov       rdx,[rdi+8]
mov       edx,[rdx+8]
cmp       ecx,edx
jge       short M01_L00
mov       [rdi+10],ecx
jmp       short M01_L01
M01_L00
 
mov       [rdi+10],edx
jmp       near ptr M01_L23
M01_L01
 
mov       rcx,rbx
mov       edx,esi
call      qword ptr [7FF9F62ACDE0]; DotNetTips.Spargine.Extensions.StringExtensions.GetHash(System.String, DotNetTips.Spargine.Extensions.HashType)
mov       rbx,rax
mov       rcx,2686EC0EF38
mov       rcx,[rcx]
cmp       qword ptr [rcx+8],0
jne       near ptr M01_L24
mov       rcx,[rcx+18]
M01_L02
 
mov       rsi,rcx
mov       rcx,offset MT_Microsoft.Extensions.ObjectPool.DefaultObjectPool`1[[System.Text.StringBuilder, System.Private.CoreLib]]
cmp       [rsi],rcx
jne       near ptr M01_L27
mov       rcx,[rsi+20]
mov       [rbp-38],rcx
cmp       qword ptr [rbp-38],0
je        near ptr M01_L25
lea       rcx,[rsi+20]
mov       r8,[rbp-38]
xor       edx,edx
call      System.Threading.Interlocked.CompareExchange(System.Object ByRef, System.Object, System.Object)
cmp       rax,[rbp-38]
jne       near ptr M01_L25
M01_L03
 
mov       rdi,[rbp-38]
M01_L04
 
xor       ecx,ecx
mov       [rbp-38],rcx
M01_L05
 
cmp       [rdi],dil
mov       rcx,rdi
xor       edx,edx
call      qword ptr [7FF9F60CC1F8]; System.Text.StringBuilder.set_Length(Int32)
mov       [rbp-40],rdi
test      rbx,rbx
je        near ptr M01_L07
lea       rsi,[rbx+10]
mov       ebx,[rbx+8]
xor       r15d,r15d
test      ebx,ebx
jle       near ptr M01_L15
M01_L06
 
mov       ecx,r15d
movzx     ecx,byte ptr [rsi+rcx]
mov       r8,2686EC00428
mov       r8,[r8]
mov       rdx,2A8FCB077D8
call      qword ptr [7FF9F6004810]; System.Number.g__FormatUInt32Slow|43_0(UInt32, System.String, System.IFormatProvider)
test      rax,rax
je        near ptr M01_L14
lea       rdx,[rax+0C]
mov       r8d,[rax+8]
test      r8d,r8d
je        near ptr M01_L14
mov       rcx,[rdi+8]
mov       eax,[rdi+18]
lea       r13d,[rax+r8]
cmp       r13d,[rcx+8]
ja        near ptr M01_L13
cdqe
lea       rcx,[rcx+rax*2+10]
cmp       r8d,2
jg        near ptr M01_L11
movzx     eax,word ptr [rdx]
mov       [rcx],ax
cmp       r8d,2
jne       near ptr M01_L12
movzx     r8d,word ptr [rdx+2]
mov       [rcx+2],r8w
jmp       near ptr M01_L12
M01_L07
 
call      qword ptr [7FF9F63452C0]
mov       ecx,0F
mov       rdx,7FF9F62C3C60
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1446
mov       rdx,7FF9F6155A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DC6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FF9F62C3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DC6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63450B0]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FF9F6056670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L08
 
mov       rcx,rbx
mov       edx,3
call      qword ptr [7FF9F5DC73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rbx,rax
jmp       near ptr M01_L21
M01_L09
 
mov       rax,rbx
jmp       near ptr M01_L22
M01_L10
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L11
 
movsxd    r8,r8d
add       r8,r8
call      qword ptr [7FF9F5E75B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
M01_L12
 
mov       [rdi+18],r13d
jmp       short M01_L14
M01_L13
 
mov       rcx,rdi
call      qword ptr [7FF9F60CCA98]; System.Text.StringBuilder.AppendWithExpansion(Char ByRef, Int32)
M01_L14
 
inc       r15d
cmp       r15d,ebx
jl        near ptr M01_L06
M01_L15
 
mov       rcx,rdi
call      qword ptr [7FF9F60D8140]; System.Text.StringBuilder.ToString()
mov       rbx,rax
test      rbx,rbx
je        short M01_L09
mov       rcx,offset MT_System.CharEnumerator
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       dword ptr [rsi+10],0FFFFFFFF
lea       rcx,[rsi+8]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rsi+8]
mov       ecx,[rcx+8]
cmp       r14d,ecx
jge       short M01_L16
mov       [rsi+10],r14d
jmp       short M01_L17
M01_L16
 
mov       [rsi+10],ecx
jmp       near ptr M01_L09
M01_L17
 
cmp       dword ptr [rbx+8],0
je        short M01_L21
movzx     ecx,word ptr [rbx+0C]
cmp       ecx,100
jae       short M01_L18
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M01_L08
jmp       short M01_L19
M01_L18
 
call      qword ptr [7FF9F68BF528]
test      eax,eax
jne       near ptr M01_L08
M01_L19
 
mov       ecx,[rbx+8]
dec       ecx
cmp       ecx,[rbx+8]
jae       near ptr M01_L10
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M01_L20
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M01_L08
jmp       short M01_L21
M01_L20
 
call      qword ptr [7FF9F68BF528]
test      eax,eax
jne       near ptr M01_L08
M01_L21
 
mov       rax,rbx
M01_L22
 
mov       [rbp-48],rax
mov       rcx,rsp
call      M01_L28
nop
mov       rax,[rbp-48]
add       rsp,40
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L23
 
mov       rax,2A8FCAF0008
add       rsp,40
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L24
 
call      qword ptr [7FF9F623EE68]; System.Lazy`1[[System.__Canon, System.Private.CoreLib]].CreateValue()
mov       rcx,rax
jmp       near ptr M01_L02
M01_L25
 
mov       rcx,[rsi+18]
lea       rdx,[rbp-38]
cmp       [rcx],ecx
call      qword ptr [7FF9F65AEBF8]; System.Collections.Concurrent.ConcurrentQueue`1[[System.__Canon, System.Private.CoreLib]].TryDequeue(System.__Canon ByRef)
test      eax,eax
je        short M01_L26
add       rsi,2C
lock dec  dword ptr [rsi]
jmp       near ptr M01_L03
M01_L26
 
mov       rax,[rsi+8]
mov       rcx,[rax+8]
call      qword ptr [rax+18]
mov       rdi,rax
jmp       near ptr M01_L04
M01_L27
 
mov       rcx,rsi
mov       rax,[rsi]
mov       rax,[rax+40]
call      qword ptr [rax+20]
mov       rdi,rax
jmp       near ptr M01_L05
M01_L28
 
push      rbp
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbx
sub       rsp,30
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+70]
mov       rcx,2686EC0EF38
mov       rcx,[rcx]
cmp       qword ptr [rcx+8],0
je        short M01_L29
call      qword ptr [7FF9F623EE68]; System.Lazy`1[[System.__Canon, System.Private.CoreLib]].CreateValue()
mov       rsi,rax
jmp       short M01_L30
M01_L29
 
mov       rsi,[rcx+18]
M01_L30
 
mov       rcx,offset MT_Microsoft.Extensions.ObjectPool.DefaultObjectPool`1[[System.Text.StringBuilder, System.Private.CoreLib]]
cmp       [rsi],rcx
jne       near ptr M01_L35
mov       rdi,[rsi+10]
mov       rcx,offset Microsoft.Extensions.ObjectPool.StringBuilderPooledObjectPolicy.Return(System.Text.StringBuilder)
cmp       [rdi+18],rcx
jne       short M01_L31
mov       r14,[rbp-40]
mov       rcx,[r14+8]
mov       ecx,[rcx+8]
add       ecx,[r14+1C]
mov       rdx,[rdi+8]
cmp       ecx,[rdx+0C]
jg        near ptr M01_L36
mov       rcx,r14
xor       edx,edx
call      qword ptr [7FF9F60CC1F8]; System.Text.StringBuilder.set_Length(Int32)
jmp       short M01_L32
M01_L31
 
mov       rdx,[rbp-40]
mov       rcx,[rdi+8]
call      qword ptr [rdi+18]
test      eax,eax
mov       r14,[rbp-40]
je        short M01_L36
M01_L32
 
cmp       qword ptr [rsi+20],0
jne       short M01_L33
lea       rcx,[rsi+20]
mov       rdx,r14
xor       r8d,r8d
call      System.Threading.Interlocked.CompareExchange(System.Object ByRef, System.Object, System.Object)
test      rax,rax
je        short M01_L36
M01_L33
 
lea       rcx,[rsi+2C]
mov       edx,1
lock xadd [rcx],edx
inc       edx
cmp       edx,[rsi+28]
jg        short M01_L34
mov       rcx,[rsi+18]
mov       rdx,r14
cmp       [rcx],ecx
call      qword ptr [7FF9F65AEBC8]; System.Collections.Concurrent.ConcurrentQueue`1[[System.__Canon, System.Private.CoreLib]].Enqueue(System.__Canon)
jmp       short M01_L36
M01_L34
 
add       rsi,2C
lock dec  dword ptr [rsi]
jmp       short M01_L36
M01_L35
 
mov       r14,[rbp-40]
mov       rcx,rsi
mov       rdx,r14
mov       rax,[rsi]
mov       rax,[rax+40]
call      qword ptr [rax+28]
M01_L36
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.ComputeHash()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rcx,[rbx+298]
xor       edx,edx
call      qword ptr [7FF9F62ACE28]; DotNetTips.Spargine.Extensions.StringExtensions.ComputeHash(System.String, DotNetTips.Spargine.Extensions.HashType)
mov       [rsp+28],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.StringExtensions.ComputeHash(System.String, DotNetTips.Spargine.Extensions.HashType)
push      rbp
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbx
sub       rsp,40
lea       rbp,[rsp+70]
xor       eax,eax
mov       [rbp-48],rax
mov       [rbp-38],rax
mov       [rbp-50],rsp
mov       rbx,rcx
mov       esi,edx
test      rbx,rbx
je        near ptr M01_L22
mov       rcx,offset MT_System.CharEnumerator
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       dword ptr [rdi+10],0FFFFFFFF
lea       rcx,[rdi+8]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
mov       r14d,[rdi+10]
inc       r14d
mov       ecx,r14d
mov       rdx,[rdi+8]
mov       r15d,[rdx+8]
cmp       ecx,r15d
jge       near ptr M01_L04
mov       [rdi+10],ecx
mov       rcx,rbx
mov       edx,esi
call      qword ptr [7FF9F62ACDE0]; DotNetTips.Spargine.Extensions.StringExtensions.GetHash(System.String, DotNetTips.Spargine.Extensions.HashType)
mov       rbx,rax
mov       rcx,2947F00CF40
mov       rcx,[rcx]
cmp       qword ptr [rcx+8],0
jne       near ptr M01_L23
mov       rcx,[rcx+18]
M01_L00
 
mov       rsi,rcx
mov       rcx,offset MT_Microsoft.Extensions.ObjectPool.DefaultObjectPool`1[[System.Text.StringBuilder, System.Private.CoreLib]]
cmp       [rsi],rcx
jne       near ptr M01_L26
mov       rcx,[rsi+20]
mov       [rbp-38],rcx
cmp       qword ptr [rbp-38],0
je        near ptr M01_L24
lea       rcx,[rsi+20]
mov       r8,[rbp-38]
xor       edx,edx
call      System.Threading.Interlocked.CompareExchange(System.Object ByRef, System.Object, System.Object)
cmp       rax,[rbp-38]
jne       near ptr M01_L24
M01_L01
 
mov       rdi,[rbp-38]
M01_L02
 
xor       ecx,ecx
mov       [rbp-38],rcx
M01_L03
 
cmp       [rdi],dil
mov       rcx,rdi
xor       edx,edx
call      qword ptr [7FF9F60CC1F8]; System.Text.StringBuilder.set_Length(Int32)
mov       [rbp-40],rdi
jmp       short M01_L05
M01_L04
 
mov       [rdi+10],r15d
jmp       near ptr M01_L22
M01_L05
 
test      rbx,rbx
je        near ptr M01_L07
lea       rsi,[rbx+10]
mov       ebx,[rbx+8]
xor       r15d,r15d
test      ebx,ebx
jle       near ptr M01_L15
M01_L06
 
mov       ecx,r15d
movzx     ecx,byte ptr [rsi+rcx]
mov       r8,29483000428
mov       r8,[r8]
mov       rdx,2D510E177D8
call      qword ptr [7FF9F6004810]; System.Number.g__FormatUInt32Slow|43_0(UInt32, System.String, System.IFormatProvider)
test      rax,rax
je        near ptr M01_L14
lea       rdx,[rax+0C]
mov       r8d,[rax+8]
test      r8d,r8d
je        near ptr M01_L14
mov       rcx,[rdi+8]
mov       eax,[rdi+18]
lea       r13d,[rax+r8]
cmp       r13d,[rcx+8]
ja        near ptr M01_L13
cdqe
lea       rcx,[rcx+rax*2+10]
cmp       r8d,2
jg        near ptr M01_L11
movzx     eax,word ptr [rdx]
mov       [rcx],ax
cmp       r8d,2
jne       near ptr M01_L12
movzx     r8d,word ptr [rdx+2]
mov       [rcx+2],r8w
jmp       near ptr M01_L12
M01_L07
 
call      qword ptr [7FF9F63452C0]
mov       ecx,0F
mov       rdx,7FF9F62C3C60
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1446
mov       rdx,7FF9F6155A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DC6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FF9F62C3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DC6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63450B0]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FF9F6056670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L08
 
mov       rcx,rbx
mov       edx,3
call      qword ptr [7FF9F5DC73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rbx,rax
jmp       near ptr M01_L20
M01_L09
 
mov       rax,rbx
jmp       near ptr M01_L21
M01_L10
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L11
 
movsxd    r8,r8d
add       r8,r8
call      qword ptr [7FF9F5E75B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
M01_L12
 
mov       [rdi+18],r13d
jmp       short M01_L14
M01_L13
 
mov       rcx,rdi
call      qword ptr [7FF9F60CCA98]; System.Text.StringBuilder.AppendWithExpansion(Char ByRef, Int32)
M01_L14
 
inc       r15d
cmp       r15d,ebx
jl        near ptr M01_L06
M01_L15
 
mov       rcx,rdi
call      qword ptr [7FF9F60D8140]; System.Text.StringBuilder.ToString()
mov       rbx,rax
test      rbx,rbx
je        short M01_L09
mov       rcx,offset MT_System.CharEnumerator
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       dword ptr [rsi+10],0FFFFFFFF
lea       rcx,[rsi+8]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rsi+8]
mov       ecx,[rcx+8]
cmp       r14d,ecx
jge       short M01_L16
mov       [rsi+10],r14d
cmp       dword ptr [rbx+8],0
je        short M01_L20
movzx     ecx,word ptr [rbx+0C]
cmp       ecx,100
jae       short M01_L17
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M01_L08
jmp       short M01_L18
M01_L16
 
mov       [rsi+10],ecx
jmp       near ptr M01_L09
M01_L17
 
call      qword ptr [7FF9F68BF528]
test      eax,eax
jne       near ptr M01_L08
M01_L18
 
mov       ecx,[rbx+8]
dec       ecx
cmp       ecx,[rbx+8]
jae       near ptr M01_L10
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M01_L19
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M01_L08
jmp       short M01_L20
M01_L19
 
call      qword ptr [7FF9F68BF528]
test      eax,eax
jne       near ptr M01_L08
M01_L20
 
mov       rax,rbx
M01_L21
 
mov       [rbp-48],rax
mov       rcx,rsp
call      M01_L27
nop
mov       rax,[rbp-48]
add       rsp,40
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L22
 
mov       rax,2D510E00008
add       rsp,40
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L23
 
call      qword ptr [7FF9F623EE68]; System.Lazy`1[[System.__Canon, System.Private.CoreLib]].CreateValue()
mov       rcx,rax
jmp       near ptr M01_L00
M01_L24
 
mov       rcx,[rsi+18]
lea       rdx,[rbp-38]
cmp       [rcx],ecx
call      qword ptr [7FF9F65AEBF8]; System.Collections.Concurrent.ConcurrentQueue`1[[System.__Canon, System.Private.CoreLib]].TryDequeue(System.__Canon ByRef)
test      eax,eax
je        short M01_L25
add       rsi,2C
lock dec  dword ptr [rsi]
jmp       near ptr M01_L01
M01_L25
 
mov       rax,[rsi+8]
mov       rcx,[rax+8]
call      qword ptr [rax+18]
mov       rdi,rax
jmp       near ptr M01_L02
M01_L26
 
mov       rcx,rsi
mov       rax,[rsi]
mov       rax,[rax+40]
call      qword ptr [rax+20]
mov       rdi,rax
jmp       near ptr M01_L03
M01_L27
 
push      rbp
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbx
sub       rsp,30
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+70]
mov       rcx,2947F00CF40
mov       rcx,[rcx]
cmp       qword ptr [rcx+8],0
je        short M01_L28
call      qword ptr [7FF9F623EE68]; System.Lazy`1[[System.__Canon, System.Private.CoreLib]].CreateValue()
mov       rsi,rax
jmp       short M01_L29
M01_L28
 
mov       rsi,[rcx+18]
M01_L29
 
mov       rcx,offset MT_Microsoft.Extensions.ObjectPool.DefaultObjectPool`1[[System.Text.StringBuilder, System.Private.CoreLib]]
cmp       [rsi],rcx
jne       near ptr M01_L34
mov       rdi,[rsi+10]
mov       rcx,offset Microsoft.Extensions.ObjectPool.StringBuilderPooledObjectPolicy.Return(System.Text.StringBuilder)
cmp       [rdi+18],rcx
jne       short M01_L30
mov       r14,[rbp-40]
mov       rcx,[r14+8]
mov       ecx,[rcx+8]
add       ecx,[r14+1C]
mov       rdx,[rdi+8]
cmp       ecx,[rdx+0C]
jg        near ptr M01_L35
mov       rcx,r14
xor       edx,edx
call      qword ptr [7FF9F60CC1F8]; System.Text.StringBuilder.set_Length(Int32)
jmp       short M01_L31
M01_L30
 
mov       rdx,[rbp-40]
mov       rcx,[rdi+8]
call      qword ptr [rdi+18]
test      eax,eax
mov       r14,[rbp-40]
je        short M01_L35
M01_L31
 
cmp       qword ptr [rsi+20],0
jne       short M01_L32
lea       rcx,[rsi+20]
mov       rdx,r14
xor       r8d,r8d
call      System.Threading.Interlocked.CompareExchange(System.Object ByRef, System.Object, System.Object)
test      rax,rax
je        short M01_L35
M01_L32
 
lea       rcx,[rsi+2C]
mov       edx,1
lock xadd [rcx],edx
inc       edx
cmp       edx,[rsi+28]
jg        short M01_L33
mov       rcx,[rsi+18]
mov       rdx,r14
cmp       [rcx],ecx
call      qword ptr [7FF9F65AEBC8]; System.Collections.Concurrent.ConcurrentQueue`1[[System.__Canon, System.Private.CoreLib]].Enqueue(System.__Canon)
jmp       short M01_L35
M01_L33
 
add       rsi,2C
lock dec  dword ptr [rsi]
jmp       short M01_L35
M01_L34
 
mov       r14,[rbp-40]
mov       rcx,rsi
mov       rdx,r14
mov       rax,[rsi]
mov       rax,[rax+40]
call      qword ptr [rax+28]
M01_L35
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.ComputeHash()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rcx,[rbx+298]
xor       edx,edx
call      qword ptr [7FF9F62BCE28]; DotNetTips.Spargine.Extensions.StringExtensions.ComputeHash(System.String, DotNetTips.Spargine.Extensions.HashType)
mov       [rsp+28],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.StringExtensions.ComputeHash(System.String, DotNetTips.Spargine.Extensions.HashType)
push      rbp
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbx
sub       rsp,40
lea       rbp,[rsp+70]
xor       eax,eax
mov       [rbp-48],rax
mov       [rbp-38],rax
mov       [rbp-50],rsp
mov       rbx,rcx
mov       esi,edx
test      rbx,rbx
je        near ptr M01_L22
mov       rcx,offset MT_System.CharEnumerator
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       dword ptr [rdi+10],0FFFFFFFF
lea       rcx,[rdi+8]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
mov       r14d,[rdi+10]
inc       r14d
mov       ecx,r14d
mov       rdx,[rdi+8]
mov       r15d,[rdx+8]
cmp       ecx,r15d
jge       near ptr M01_L04
mov       [rdi+10],ecx
mov       rcx,rbx
mov       edx,esi
call      qword ptr [7FF9F62BCDE0]; DotNetTips.Spargine.Extensions.StringExtensions.GetHash(System.String, DotNetTips.Spargine.Extensions.HashType)
mov       rbx,rax
mov       rcx,1E71180CF40
mov       rcx,[rcx]
cmp       qword ptr [rcx+8],0
jne       near ptr M01_L23
mov       rcx,[rcx+18]
M01_L00
 
mov       rsi,rcx
mov       rcx,offset MT_Microsoft.Extensions.ObjectPool.DefaultObjectPool`1[[System.Text.StringBuilder, System.Private.CoreLib]]
cmp       [rsi],rcx
jne       near ptr M01_L26
mov       rcx,[rsi+20]
mov       [rbp-38],rcx
cmp       qword ptr [rbp-38],0
je        near ptr M01_L24
lea       rcx,[rsi+20]
mov       r8,[rbp-38]
xor       edx,edx
call      System.Threading.Interlocked.CompareExchange(System.Object ByRef, System.Object, System.Object)
cmp       rax,[rbp-38]
jne       near ptr M01_L24
M01_L01
 
mov       rdi,[rbp-38]
M01_L02
 
xor       ecx,ecx
mov       [rbp-38],rcx
M01_L03
 
cmp       [rdi],dil
mov       rcx,rdi
xor       edx,edx
call      qword ptr [7FF9F60DC1F8]; System.Text.StringBuilder.set_Length(Int32)
mov       [rbp-40],rdi
jmp       short M01_L05
M01_L04
 
mov       [rdi+10],r15d
jmp       near ptr M01_L22
M01_L05
 
test      rbx,rbx
je        near ptr M01_L07
lea       rsi,[rbx+10]
mov       ebx,[rbx+8]
xor       r15d,r15d
test      ebx,ebx
jle       near ptr M01_L15
M01_L06
 
mov       ecx,r15d
movzx     ecx,byte ptr [rsi+rcx]
mov       r8,1E715800428
mov       r8,[r8]
mov       rdx,227A35777D8
call      qword ptr [7FF9F6014810]; System.Number.g__FormatUInt32Slow|43_0(UInt32, System.String, System.IFormatProvider)
test      rax,rax
je        near ptr M01_L14
lea       rdx,[rax+0C]
mov       r8d,[rax+8]
test      r8d,r8d
je        near ptr M01_L14
mov       rcx,[rdi+8]
mov       eax,[rdi+18]
lea       r13d,[rax+r8]
cmp       r13d,[rcx+8]
ja        near ptr M01_L13
cdqe
lea       rcx,[rcx+rax*2+10]
cmp       r8d,2
jg        near ptr M01_L11
movzx     eax,word ptr [rdx]
mov       [rcx],ax
cmp       r8d,2
jne       near ptr M01_L12
movzx     r8d,word ptr [rdx+2]
mov       [rcx+2],r8w
jmp       near ptr M01_L12
M01_L07
 
call      qword ptr [7FF9F63552C0]
mov       ecx,0F
mov       rdx,7FF9F62D3C60
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1446
mov       rdx,7FF9F6165A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DD6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FF9F62D3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DD6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63550B0]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FF9F6066670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L08
 
mov       rcx,rbx
mov       edx,3
call      qword ptr [7FF9F5DD73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rbx,rax
jmp       near ptr M01_L20
M01_L09
 
mov       rax,rbx
jmp       near ptr M01_L21
M01_L10
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L11
 
movsxd    r8,r8d
add       r8,r8
call      qword ptr [7FF9F5E85B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
M01_L12
 
mov       [rdi+18],r13d
jmp       short M01_L14
M01_L13
 
mov       rcx,rdi
call      qword ptr [7FF9F60DCA98]; System.Text.StringBuilder.AppendWithExpansion(Char ByRef, Int32)
M01_L14
 
inc       r15d
cmp       r15d,ebx
jl        near ptr M01_L06
M01_L15
 
mov       rcx,rdi
call      qword ptr [7FF9F60E8140]; System.Text.StringBuilder.ToString()
mov       rbx,rax
test      rbx,rbx
je        short M01_L09
mov       rcx,offset MT_System.CharEnumerator
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       dword ptr [rsi+10],0FFFFFFFF
lea       rcx,[rsi+8]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rsi+8]
mov       ecx,[rcx+8]
cmp       r14d,ecx
jge       short M01_L16
mov       [rsi+10],r14d
cmp       dword ptr [rbx+8],0
je        short M01_L20
movzx     ecx,word ptr [rbx+0C]
cmp       ecx,100
jae       short M01_L17
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M01_L08
jmp       short M01_L18
M01_L16
 
mov       [rsi+10],ecx
jmp       near ptr M01_L09
M01_L17
 
call      qword ptr [7FF9F672E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M01_L08
M01_L18
 
mov       ecx,[rbx+8]
dec       ecx
cmp       ecx,[rbx+8]
jae       near ptr M01_L10
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M01_L19
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M01_L08
jmp       short M01_L20
M01_L19
 
call      qword ptr [7FF9F672E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M01_L08
M01_L20
 
mov       rax,rbx
M01_L21
 
mov       [rbp-48],rax
mov       rcx,rsp
call      M01_L27
nop
mov       rax,[rbp-48]
add       rsp,40
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L22
 
mov       rax,227A3560008
add       rsp,40
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L23
 
call      qword ptr [7FF9F624EE68]; System.Lazy`1[[System.__Canon, System.Private.CoreLib]].CreateValue()
mov       rcx,rax
jmp       near ptr M01_L00
M01_L24
 
mov       rcx,[rsi+18]
lea       rdx,[rbp-38]
cmp       [rcx],ecx
call      qword ptr [7FF9F65BF258]; System.Collections.Concurrent.ConcurrentQueue`1[[System.__Canon, System.Private.CoreLib]].TryDequeue(System.__Canon ByRef)
test      eax,eax
je        short M01_L25
add       rsi,2C
lock dec  dword ptr [rsi]
jmp       near ptr M01_L01
M01_L25
 
mov       rax,[rsi+8]
mov       rcx,[rax+8]
call      qword ptr [rax+18]
mov       rdi,rax
jmp       near ptr M01_L02
M01_L26
 
mov       rcx,rsi
mov       rax,[rsi]
mov       rax,[rax+40]
call      qword ptr [rax+20]
mov       rdi,rax
jmp       near ptr M01_L03
M01_L27
 
push      rbp
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbx
sub       rsp,30
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+70]
mov       rcx,1E71180CF40
mov       rcx,[rcx]
cmp       qword ptr [rcx+8],0
je        short M01_L28
call      qword ptr [7FF9F624EE68]; System.Lazy`1[[System.__Canon, System.Private.CoreLib]].CreateValue()
mov       rsi,rax
jmp       short M01_L29
M01_L28
 
mov       rsi,[rcx+18]
M01_L29
 
mov       rcx,offset MT_Microsoft.Extensions.ObjectPool.DefaultObjectPool`1[[System.Text.StringBuilder, System.Private.CoreLib]]
cmp       [rsi],rcx
jne       near ptr M01_L34
mov       rdi,[rsi+10]
mov       rcx,offset Microsoft.Extensions.ObjectPool.StringBuilderPooledObjectPolicy.Return(System.Text.StringBuilder)
cmp       [rdi+18],rcx
jne       short M01_L30
mov       r14,[rbp-40]
mov       rcx,[r14+8]
mov       ecx,[rcx+8]
add       ecx,[r14+1C]
mov       rdx,[rdi+8]
cmp       ecx,[rdx+0C]
jg        near ptr M01_L35
mov       rcx,r14
xor       edx,edx
call      qword ptr [7FF9F60DC1F8]; System.Text.StringBuilder.set_Length(Int32)
jmp       short M01_L31
M01_L30
 
mov       rdx,[rbp-40]
mov       rcx,[rdi+8]
call      qword ptr [rdi+18]
test      eax,eax
mov       r14,[rbp-40]
je        short M01_L35
M01_L31
 
cmp       qword ptr [rsi+20],0
jne       short M01_L32
lea       rcx,[rsi+20]
mov       rdx,r14
xor       r8d,r8d
call      System.Threading.Interlocked.CompareExchange(System.Object ByRef, System.Object, System.Object)
test      rax,rax
je        short M01_L35
M01_L32
 
lea       rcx,[rsi+2C]
mov       edx,1
lock xadd [rcx],edx
inc       edx
cmp       edx,[rsi+28]
jg        short M01_L33
mov       rcx,[rsi+18]
mov       rdx,r14
cmp       [rcx],ecx
call      qword ptr [7FF9F65BF228]; System.Collections.Concurrent.ConcurrentQueue`1[[System.__Canon, System.Private.CoreLib]].Enqueue(System.__Canon)
jmp       short M01_L35
M01_L33
 
add       rsi,2C
lock dec  dword ptr [rsi]
jmp       short M01_L35
M01_L34
 
mov       r14,[rbp-40]
mov       rcx,rsi
mov       rdx,r14
mov       rax,[rsi]
mov       rax,[rax+40]
call      qword ptr [rax+28]
M01_L35
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.ComputeHash()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rcx,[rbx+298]
xor       edx,edx
call      qword ptr [7FF9F62ACE28]; DotNetTips.Spargine.Extensions.StringExtensions.ComputeHash(System.String, DotNetTips.Spargine.Extensions.HashType)
mov       [rsp+28],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.StringExtensions.ComputeHash(System.String, DotNetTips.Spargine.Extensions.HashType)
push      rbp
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbx
sub       rsp,40
lea       rbp,[rsp+70]
xor       eax,eax
mov       [rbp-48],rax
mov       [rbp-38],rax
mov       [rbp-50],rsp
mov       rbx,rcx
mov       esi,edx
test      rbx,rbx
je        near ptr M01_L22
mov       rcx,offset MT_System.CharEnumerator
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       dword ptr [rdi+10],0FFFFFFFF
lea       rcx,[rdi+8]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
mov       r14d,[rdi+10]
inc       r14d
mov       ecx,r14d
mov       rdx,[rdi+8]
mov       r15d,[rdx+8]
cmp       ecx,r15d
jge       near ptr M01_L04
mov       [rdi+10],ecx
mov       rcx,rbx
mov       edx,esi
call      qword ptr [7FF9F62ACDE0]; DotNetTips.Spargine.Extensions.StringExtensions.GetHash(System.String, DotNetTips.Spargine.Extensions.HashType)
mov       rbx,rax
mov       rcx,190AC80EF38
mov       rcx,[rcx]
cmp       qword ptr [rcx+8],0
jne       near ptr M01_L23
mov       rcx,[rcx+18]
M01_L00
 
mov       rsi,rcx
mov       rcx,offset MT_Microsoft.Extensions.ObjectPool.DefaultObjectPool`1[[System.Text.StringBuilder, System.Private.CoreLib]]
cmp       [rsi],rcx
jne       near ptr M01_L26
mov       rcx,[rsi+20]
mov       [rbp-38],rcx
cmp       qword ptr [rbp-38],0
je        near ptr M01_L24
lea       rcx,[rsi+20]
mov       r8,[rbp-38]
xor       edx,edx
call      System.Threading.Interlocked.CompareExchange(System.Object ByRef, System.Object, System.Object)
cmp       rax,[rbp-38]
jne       near ptr M01_L24
M01_L01
 
mov       rdi,[rbp-38]
M01_L02
 
xor       ecx,ecx
mov       [rbp-38],rcx
M01_L03
 
cmp       [rdi],dil
mov       rcx,rdi
xor       edx,edx
call      qword ptr [7FF9F60CC1F8]; System.Text.StringBuilder.set_Length(Int32)
mov       [rbp-40],rdi
jmp       short M01_L05
M01_L04
 
mov       [rdi+10],r15d
jmp       near ptr M01_L22
M01_L05
 
test      rbx,rbx
je        near ptr M01_L07
lea       rsi,[rbx+10]
mov       ebx,[rbx+8]
xor       r15d,r15d
test      ebx,ebx
jle       near ptr M01_L15
M01_L06
 
mov       ecx,r15d
movzx     ecx,byte ptr [rsi+rcx]
mov       r8,190AC800428
mov       r8,[r8]
mov       rdx,1D13E6177D8
call      qword ptr [7FF9F6004810]; System.Number.g__FormatUInt32Slow|43_0(UInt32, System.String, System.IFormatProvider)
test      rax,rax
je        near ptr M01_L14
lea       rdx,[rax+0C]
mov       r8d,[rax+8]
test      r8d,r8d
je        near ptr M01_L14
mov       rcx,[rdi+8]
mov       eax,[rdi+18]
lea       r13d,[rax+r8]
cmp       r13d,[rcx+8]
ja        near ptr M01_L13
cdqe
lea       rcx,[rcx+rax*2+10]
cmp       r8d,2
jg        near ptr M01_L11
movzx     eax,word ptr [rdx]
mov       [rcx],ax
cmp       r8d,2
jne       near ptr M01_L12
movzx     r8d,word ptr [rdx+2]
mov       [rcx+2],r8w
jmp       near ptr M01_L12
M01_L07
 
call      qword ptr [7FF9F63452C0]
mov       ecx,0F
mov       rdx,7FF9F62C3C60
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1446
mov       rdx,7FF9F6155A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DC6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FF9F62C3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DC6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63450B0]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FF9F6056670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L08
 
mov       rcx,rbx
mov       edx,3
call      qword ptr [7FF9F5DC73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rbx,rax
jmp       near ptr M01_L20
M01_L09
 
mov       rax,rbx
jmp       near ptr M01_L21
M01_L10
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L11
 
movsxd    r8,r8d
add       r8,r8
call      qword ptr [7FF9F5E75B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
M01_L12
 
mov       [rdi+18],r13d
jmp       short M01_L14
M01_L13
 
mov       rcx,rdi
call      qword ptr [7FF9F60CCA98]; System.Text.StringBuilder.AppendWithExpansion(Char ByRef, Int32)
M01_L14
 
inc       r15d
cmp       r15d,ebx
jl        near ptr M01_L06
M01_L15
 
mov       rcx,rdi
call      qword ptr [7FF9F60D8140]; System.Text.StringBuilder.ToString()
mov       rbx,rax
test      rbx,rbx
je        short M01_L09
mov       rcx,offset MT_System.CharEnumerator
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       dword ptr [rsi+10],0FFFFFFFF
lea       rcx,[rsi+8]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rsi+8]
mov       ecx,[rcx+8]
cmp       r14d,ecx
jge       short M01_L16
mov       [rsi+10],r14d
cmp       dword ptr [rbx+8],0
je        short M01_L20
movzx     ecx,word ptr [rbx+0C]
cmp       ecx,100
jae       short M01_L17
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M01_L08
jmp       short M01_L18
M01_L16
 
mov       [rsi+10],ecx
jmp       near ptr M01_L09
M01_L17
 
call      qword ptr [7FF9F671E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M01_L08
M01_L18
 
mov       ecx,[rbx+8]
dec       ecx
cmp       ecx,[rbx+8]
jae       near ptr M01_L10
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M01_L19
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M01_L08
jmp       short M01_L20
M01_L19
 
call      qword ptr [7FF9F671E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M01_L08
M01_L20
 
mov       rax,rbx
M01_L21
 
mov       [rbp-48],rax
mov       rcx,rsp
call      M01_L27
nop
mov       rax,[rbp-48]
add       rsp,40
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L22
 
mov       rax,1D13E600008
add       rsp,40
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L23
 
call      qword ptr [7FF9F623EE68]; System.Lazy`1[[System.__Canon, System.Private.CoreLib]].CreateValue()
mov       rcx,rax
jmp       near ptr M01_L00
M01_L24
 
mov       rcx,[rsi+18]
lea       rdx,[rbp-38]
cmp       [rcx],ecx
call      qword ptr [7FF9F65AEBF8]; System.Collections.Concurrent.ConcurrentQueue`1[[System.__Canon, System.Private.CoreLib]].TryDequeue(System.__Canon ByRef)
test      eax,eax
je        short M01_L25
add       rsi,2C
lock dec  dword ptr [rsi]
jmp       near ptr M01_L01
M01_L25
 
mov       rax,[rsi+8]
mov       rcx,[rax+8]
call      qword ptr [rax+18]
mov       rdi,rax
jmp       near ptr M01_L02
M01_L26
 
mov       rcx,rsi
mov       rax,[rsi]
mov       rax,[rax+40]
call      qword ptr [rax+20]
mov       rdi,rax
jmp       near ptr M01_L03
M01_L27
 
push      rbp
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbx
sub       rsp,30
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+70]
mov       rcx,190AC80EF38
mov       rcx,[rcx]
cmp       qword ptr [rcx+8],0
je        short M01_L28
call      qword ptr [7FF9F623EE68]; System.Lazy`1[[System.__Canon, System.Private.CoreLib]].CreateValue()
mov       rsi,rax
jmp       short M01_L29
M01_L28
 
mov       rsi,[rcx+18]
M01_L29
 
mov       rcx,offset MT_Microsoft.Extensions.ObjectPool.DefaultObjectPool`1[[System.Text.StringBuilder, System.Private.CoreLib]]
cmp       [rsi],rcx
jne       near ptr M01_L34
mov       rdi,[rsi+10]
mov       rcx,offset Microsoft.Extensions.ObjectPool.StringBuilderPooledObjectPolicy.Return(System.Text.StringBuilder)
cmp       [rdi+18],rcx
jne       short M01_L30
mov       r14,[rbp-40]
mov       rcx,[r14+8]
mov       ecx,[rcx+8]
add       ecx,[r14+1C]
mov       rdx,[rdi+8]
cmp       ecx,[rdx+0C]
jg        near ptr M01_L35
mov       rcx,r14
xor       edx,edx
call      qword ptr [7FF9F60CC1F8]; System.Text.StringBuilder.set_Length(Int32)
jmp       short M01_L31
M01_L30
 
mov       rdx,[rbp-40]
mov       rcx,[rdi+8]
call      qword ptr [rdi+18]
test      eax,eax
mov       r14,[rbp-40]
je        short M01_L35
M01_L31
 
cmp       qword ptr [rsi+20],0
jne       short M01_L32
lea       rcx,[rsi+20]
mov       rdx,r14
xor       r8d,r8d
call      System.Threading.Interlocked.CompareExchange(System.Object ByRef, System.Object, System.Object)
test      rax,rax
je        short M01_L35
M01_L32
 
lea       rcx,[rsi+2C]
mov       edx,1
lock xadd [rcx],edx
inc       edx
cmp       edx,[rsi+28]
jg        short M01_L33
mov       rcx,[rsi+18]
mov       rdx,r14
cmp       [rcx],ecx
call      qword ptr [7FF9F65AEBC8]; System.Collections.Concurrent.ConcurrentQueue`1[[System.__Canon, System.Private.CoreLib]].Enqueue(System.__Canon)
jmp       short M01_L35
M01_L33
 
add       rsi,2C
lock dec  dword ptr [rsi]
jmp       short M01_L35
M01_L34
 
mov       r14,[rbp-40]
mov       rcx,rsi
mov       rdx,r14
mov       rax,[rsi]
mov       rax,[rax+40]
call      qword ptr [rax+28]
M01_L35
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.ComputeHash()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rcx,[rbx+298]
xor       edx,edx
call      qword ptr [7FF9F62BCE28]; DotNetTips.Spargine.Extensions.StringExtensions.ComputeHash(System.String, DotNetTips.Spargine.Extensions.HashType)
mov       [rsp+28],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.StringExtensions.ComputeHash(System.String, DotNetTips.Spargine.Extensions.HashType)
push      rbp
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbx
sub       rsp,40
lea       rbp,[rsp+70]
xor       eax,eax
mov       [rbp-48],rax
mov       [rbp-38],rax
mov       [rbp-50],rsp
mov       rbx,rcx
mov       esi,edx
test      rbx,rbx
je        near ptr M01_L22
mov       rcx,offset MT_System.CharEnumerator
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       dword ptr [rdi+10],0FFFFFFFF
lea       rcx,[rdi+8]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
mov       r14d,[rdi+10]
inc       r14d
mov       ecx,r14d
mov       rdx,[rdi+8]
mov       r15d,[rdx+8]
cmp       ecx,r15d
jge       near ptr M01_L04
mov       [rdi+10],ecx
mov       rcx,rbx
mov       edx,esi
call      qword ptr [7FF9F62BCDE0]; DotNetTips.Spargine.Extensions.StringExtensions.GetHash(System.String, DotNetTips.Spargine.Extensions.HashType)
mov       rbx,rax
mov       rcx,201BC80EF38
mov       rcx,[rcx]
cmp       qword ptr [rcx+8],0
jne       near ptr M01_L23
mov       rcx,[rcx+18]
M01_L00
 
mov       rsi,rcx
mov       rcx,offset MT_Microsoft.Extensions.ObjectPool.DefaultObjectPool`1[[System.Text.StringBuilder, System.Private.CoreLib]]
cmp       [rsi],rcx
jne       near ptr M01_L26
mov       rcx,[rsi+20]
mov       [rbp-38],rcx
cmp       qword ptr [rbp-38],0
je        near ptr M01_L24
lea       rcx,[rsi+20]
mov       r8,[rbp-38]
xor       edx,edx
call      System.Threading.Interlocked.CompareExchange(System.Object ByRef, System.Object, System.Object)
cmp       rax,[rbp-38]
jne       near ptr M01_L24
M01_L01
 
mov       rdi,[rbp-38]
M01_L02
 
xor       ecx,ecx
mov       [rbp-38],rcx
M01_L03
 
cmp       [rdi],dil
mov       rcx,rdi
xor       edx,edx
call      qword ptr [7FF9F60DC1F8]; System.Text.StringBuilder.set_Length(Int32)
mov       [rbp-40],rdi
jmp       short M01_L05
M01_L04
 
mov       [rdi+10],r15d
jmp       near ptr M01_L22
M01_L05
 
test      rbx,rbx
je        near ptr M01_L07
lea       rsi,[rbx+10]
mov       ebx,[rbx+8]
xor       r15d,r15d
test      ebx,ebx
jle       near ptr M01_L15
M01_L06
 
mov       ecx,r15d
movzx     ecx,byte ptr [rsi+rcx]
mov       r8,201BC800428
mov       r8,[r8]
mov       rdx,2424E7677F8
call      qword ptr [7FF9F6014810]; System.Number.g__FormatUInt32Slow|43_0(UInt32, System.String, System.IFormatProvider)
test      rax,rax
je        near ptr M01_L14
lea       rdx,[rax+0C]
mov       r8d,[rax+8]
test      r8d,r8d
je        near ptr M01_L14
mov       rcx,[rdi+8]
mov       eax,[rdi+18]
lea       r13d,[rax+r8]
cmp       r13d,[rcx+8]
ja        near ptr M01_L13
cdqe
lea       rcx,[rcx+rax*2+10]
cmp       r8d,2
jg        near ptr M01_L11
movzx     eax,word ptr [rdx]
mov       [rcx],ax
cmp       r8d,2
jne       near ptr M01_L12
movzx     r8d,word ptr [rdx+2]
mov       [rcx+2],r8w
jmp       near ptr M01_L12
M01_L07
 
call      qword ptr [7FF9F63552C0]
mov       ecx,0F
mov       rdx,7FF9F62D3C60
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1446
mov       rdx,7FF9F6165A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DD6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FF9F62D3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DD6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63550B0]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FF9F6066670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L08
 
mov       rcx,rbx
mov       edx,3
call      qword ptr [7FF9F5DD73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rbx,rax
jmp       near ptr M01_L20
M01_L09
 
mov       rax,rbx
jmp       near ptr M01_L21
M01_L10
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L11
 
movsxd    r8,r8d
add       r8,r8
call      qword ptr [7FF9F5E85B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
M01_L12
 
mov       [rdi+18],r13d
jmp       short M01_L14
M01_L13
 
mov       rcx,rdi
call      qword ptr [7FF9F60DCA98]; System.Text.StringBuilder.AppendWithExpansion(Char ByRef, Int32)
M01_L14
 
inc       r15d
cmp       r15d,ebx
jl        near ptr M01_L06
M01_L15
 
mov       rcx,rdi
call      qword ptr [7FF9F60E8140]; System.Text.StringBuilder.ToString()
mov       rbx,rax
test      rbx,rbx
je        short M01_L09
mov       rcx,offset MT_System.CharEnumerator
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       dword ptr [rsi+10],0FFFFFFFF
lea       rcx,[rsi+8]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rsi+8]
mov       ecx,[rcx+8]
cmp       r14d,ecx
jge       short M01_L16
mov       [rsi+10],r14d
cmp       dword ptr [rbx+8],0
je        short M01_L20
movzx     ecx,word ptr [rbx+0C]
cmp       ecx,100
jae       short M01_L17
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M01_L08
jmp       short M01_L18
M01_L16
 
mov       [rsi+10],ecx
jmp       near ptr M01_L09
M01_L17
 
call      qword ptr [7FF9F672E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M01_L08
M01_L18
 
mov       ecx,[rbx+8]
dec       ecx
cmp       ecx,[rbx+8]
jae       near ptr M01_L10
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M01_L19
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M01_L08
jmp       short M01_L20
M01_L19
 
call      qword ptr [7FF9F672E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M01_L08
M01_L20
 
mov       rax,rbx
M01_L21
 
mov       [rbp-48],rax
mov       rcx,rsp
call      M01_L27
nop
mov       rax,[rbp-48]
add       rsp,40
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L22
 
mov       rax,2424E750008
add       rsp,40
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L23
 
call      qword ptr [7FF9F624EE68]; System.Lazy`1[[System.__Canon, System.Private.CoreLib]].CreateValue()
mov       rcx,rax
jmp       near ptr M01_L00
M01_L24
 
mov       rcx,[rsi+18]
lea       rdx,[rbp-38]
cmp       [rcx],ecx
call      qword ptr [7FF9F65BEF10]; System.Collections.Concurrent.ConcurrentQueue`1[[System.__Canon, System.Private.CoreLib]].TryDequeue(System.__Canon ByRef)
test      eax,eax
je        short M01_L25
add       rsi,2C
lock dec  dword ptr [rsi]
jmp       near ptr M01_L01
M01_L25
 
mov       rax,[rsi+8]
mov       rcx,[rax+8]
call      qword ptr [rax+18]
mov       rdi,rax
jmp       near ptr M01_L02
M01_L26
 
mov       rcx,rsi
mov       rax,[rsi]
mov       rax,[rax+40]
call      qword ptr [rax+20]
mov       rdi,rax
jmp       near ptr M01_L03
M01_L27
 
push      rbp
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbx
sub       rsp,30
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+70]
mov       rcx,201BC80EF38
mov       rcx,[rcx]
cmp       qword ptr [rcx+8],0
je        short M01_L28
call      qword ptr [7FF9F624EE68]; System.Lazy`1[[System.__Canon, System.Private.CoreLib]].CreateValue()
mov       rsi,rax
jmp       short M01_L29
M01_L28
 
mov       rsi,[rcx+18]
M01_L29
 
mov       rcx,offset MT_Microsoft.Extensions.ObjectPool.DefaultObjectPool`1[[System.Text.StringBuilder, System.Private.CoreLib]]
cmp       [rsi],rcx
jne       near ptr M01_L34
mov       rdi,[rsi+10]
mov       rcx,offset Microsoft.Extensions.ObjectPool.StringBuilderPooledObjectPolicy.Return(System.Text.StringBuilder)
cmp       [rdi+18],rcx
jne       short M01_L30
mov       r14,[rbp-40]
mov       rcx,[r14+8]
mov       ecx,[rcx+8]
add       ecx,[r14+1C]
mov       rdx,[rdi+8]
cmp       ecx,[rdx+0C]
jg        near ptr M01_L35
mov       rcx,r14
xor       edx,edx
call      qword ptr [7FF9F60DC1F8]; System.Text.StringBuilder.set_Length(Int32)
jmp       short M01_L31
M01_L30
 
mov       rdx,[rbp-40]
mov       rcx,[rdi+8]
call      qword ptr [rdi+18]
test      eax,eax
mov       r14,[rbp-40]
je        short M01_L35
M01_L31
 
cmp       qword ptr [rsi+20],0
jne       short M01_L32
lea       rcx,[rsi+20]
mov       rdx,r14
xor       r8d,r8d
call      System.Threading.Interlocked.CompareExchange(System.Object ByRef, System.Object, System.Object)
test      rax,rax
je        short M01_L35
M01_L32
 
lea       rcx,[rsi+2C]
mov       edx,1
lock xadd [rcx],edx
inc       edx
cmp       edx,[rsi+28]
jg        short M01_L33
mov       rcx,[rsi+18]
mov       rdx,r14
cmp       [rcx],ecx
call      qword ptr [7FF9F65BEEE0]; System.Collections.Concurrent.ConcurrentQueue`1[[System.__Canon, System.Private.CoreLib]].Enqueue(System.__Canon)
jmp       short M01_L35
M01_L33
 
add       rsi,2C
lock dec  dword ptr [rsi]
jmp       short M01_L35
M01_L34
 
mov       r14,[rbp-40]
mov       rcx,rsi
mov       rdx,r14
mov       rax,[rsi]
mov       rax,[rax+40]
call      qword ptr [rax+28]
M01_L35
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.ComputeHash()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rcx,[rbx+298]
xor       edx,edx
call      qword ptr [7FF9F62ACE28]; DotNetTips.Spargine.Extensions.StringExtensions.ComputeHash(System.String, DotNetTips.Spargine.Extensions.HashType)
mov       [rsp+28],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.StringExtensions.ComputeHash(System.String, DotNetTips.Spargine.Extensions.HashType)
push      rbp
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbx
sub       rsp,40
lea       rbp,[rsp+70]
xor       eax,eax
mov       [rbp-48],rax
mov       [rbp-38],rax
mov       [rbp-50],rsp
mov       rbx,rcx
mov       esi,edx
test      rbx,rbx
je        near ptr M01_L22
mov       rcx,offset MT_System.CharEnumerator
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       dword ptr [rdi+10],0FFFFFFFF
lea       rcx,[rdi+8]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
mov       r14d,[rdi+10]
inc       r14d
mov       ecx,r14d
mov       rdx,[rdi+8]
mov       r15d,[rdx+8]
cmp       ecx,r15d
jge       near ptr M01_L04
mov       [rdi+10],ecx
mov       rcx,rbx
mov       edx,esi
call      qword ptr [7FF9F62ACDE0]; DotNetTips.Spargine.Extensions.StringExtensions.GetHash(System.String, DotNetTips.Spargine.Extensions.HashType)
mov       rbx,rax
mov       rcx,11C3BC0CF40
mov       rcx,[rcx]
cmp       qword ptr [rcx+8],0
jne       near ptr M01_L23
mov       rcx,[rcx+18]
M01_L00
 
mov       rsi,rcx
mov       rcx,offset MT_Microsoft.Extensions.ObjectPool.DefaultObjectPool`1[[System.Text.StringBuilder, System.Private.CoreLib]]
cmp       [rsi],rcx
jne       near ptr M01_L26
mov       rcx,[rsi+20]
mov       [rbp-38],rcx
cmp       qword ptr [rbp-38],0
je        near ptr M01_L24
lea       rcx,[rsi+20]
mov       r8,[rbp-38]
xor       edx,edx
call      System.Threading.Interlocked.CompareExchange(System.Object ByRef, System.Object, System.Object)
cmp       rax,[rbp-38]
jne       near ptr M01_L24
M01_L01
 
mov       rdi,[rbp-38]
M01_L02
 
xor       ecx,ecx
mov       [rbp-38],rcx
M01_L03
 
cmp       [rdi],dil
mov       rcx,rdi
xor       edx,edx
call      qword ptr [7FF9F60CC1F8]; System.Text.StringBuilder.set_Length(Int32)
mov       [rbp-40],rdi
jmp       short M01_L05
M01_L04
 
mov       [rdi+10],r15d
jmp       near ptr M01_L22
M01_L05
 
test      rbx,rbx
je        near ptr M01_L07
lea       rsi,[rbx+10]
mov       ebx,[rbx+8]
xor       r15d,r15d
test      ebx,ebx
jle       near ptr M01_L15
M01_L06
 
mov       ecx,r15d
movzx     ecx,byte ptr [rsi+rcx]
mov       r8,11C3FC00428
mov       r8,[r8]
mov       rdx,15CCDA377F8
call      qword ptr [7FF9F6004810]; System.Number.g__FormatUInt32Slow|43_0(UInt32, System.String, System.IFormatProvider)
test      rax,rax
je        near ptr M01_L14
lea       rdx,[rax+0C]
mov       r8d,[rax+8]
test      r8d,r8d
je        near ptr M01_L14
mov       rcx,[rdi+8]
mov       eax,[rdi+18]
lea       r13d,[rax+r8]
cmp       r13d,[rcx+8]
ja        near ptr M01_L13
cdqe
lea       rcx,[rcx+rax*2+10]
cmp       r8d,2
jg        near ptr M01_L11
movzx     eax,word ptr [rdx]
mov       [rcx],ax
cmp       r8d,2
jne       near ptr M01_L12
movzx     r8d,word ptr [rdx+2]
mov       [rcx+2],r8w
jmp       near ptr M01_L12
M01_L07
 
call      qword ptr [7FF9F63452C0]
mov       ecx,0F
mov       rdx,7FF9F62C3C60
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1446
mov       rdx,7FF9F6155A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DC6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FF9F62C3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DC6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63450B0]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FF9F6056670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L08
 
mov       rcx,rbx
mov       edx,3
call      qword ptr [7FF9F5DC73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rbx,rax
jmp       near ptr M01_L20
M01_L09
 
mov       rax,rbx
jmp       near ptr M01_L21
M01_L10
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L11
 
movsxd    r8,r8d
add       r8,r8
call      qword ptr [7FF9F5E75B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
M01_L12
 
mov       [rdi+18],r13d
jmp       short M01_L14
M01_L13
 
mov       rcx,rdi
call      qword ptr [7FF9F60CCA98]; System.Text.StringBuilder.AppendWithExpansion(Char ByRef, Int32)
M01_L14
 
inc       r15d
cmp       r15d,ebx
jl        near ptr M01_L06
M01_L15
 
mov       rcx,rdi
call      qword ptr [7FF9F60D8140]; System.Text.StringBuilder.ToString()
mov       rbx,rax
test      rbx,rbx
je        short M01_L09
mov       rcx,offset MT_System.CharEnumerator
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       dword ptr [rsi+10],0FFFFFFFF
lea       rcx,[rsi+8]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rsi+8]
mov       ecx,[rcx+8]
cmp       r14d,ecx
jge       short M01_L16
mov       [rsi+10],r14d
cmp       dword ptr [rbx+8],0
je        short M01_L20
movzx     ecx,word ptr [rbx+0C]
cmp       ecx,100
jae       short M01_L17
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M01_L08
jmp       short M01_L18
M01_L16
 
mov       [rsi+10],ecx
jmp       near ptr M01_L09
M01_L17
 
call      qword ptr [7FF9F671E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M01_L08
M01_L18
 
mov       ecx,[rbx+8]
dec       ecx
cmp       ecx,[rbx+8]
jae       near ptr M01_L10
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M01_L19
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M01_L08
jmp       short M01_L20
M01_L19
 
call      qword ptr [7FF9F671E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M01_L08
M01_L20
 
mov       rax,rbx
M01_L21
 
mov       [rbp-48],rax
mov       rcx,rsp
call      M01_L27
nop
mov       rax,[rbp-48]
add       rsp,40
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L22
 
mov       rax,15CCDA20008
add       rsp,40
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L23
 
call      qword ptr [7FF9F623EE68]; System.Lazy`1[[System.__Canon, System.Private.CoreLib]].CreateValue()
mov       rcx,rax
jmp       near ptr M01_L00
M01_L24
 
mov       rcx,[rsi+18]
lea       rdx,[rbp-38]
cmp       [rcx],ecx
call      qword ptr [7FF9F65AEF10]; System.Collections.Concurrent.ConcurrentQueue`1[[System.__Canon, System.Private.CoreLib]].TryDequeue(System.__Canon ByRef)
test      eax,eax
je        short M01_L25
add       rsi,2C
lock dec  dword ptr [rsi]
jmp       near ptr M01_L01
M01_L25
 
mov       rax,[rsi+8]
mov       rcx,[rax+8]
call      qword ptr [rax+18]
mov       rdi,rax
jmp       near ptr M01_L02
M01_L26
 
mov       rcx,rsi
mov       rax,[rsi]
mov       rax,[rax+40]
call      qword ptr [rax+20]
mov       rdi,rax
jmp       near ptr M01_L03
M01_L27
 
push      rbp
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbx
sub       rsp,30
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+70]
mov       rcx,11C3BC0CF40
mov       rcx,[rcx]
cmp       qword ptr [rcx+8],0
je        short M01_L28
call      qword ptr [7FF9F623EE68]; System.Lazy`1[[System.__Canon, System.Private.CoreLib]].CreateValue()
mov       rsi,rax
jmp       short M01_L29
M01_L28
 
mov       rsi,[rcx+18]
M01_L29
 
mov       rcx,offset MT_Microsoft.Extensions.ObjectPool.DefaultObjectPool`1[[System.Text.StringBuilder, System.Private.CoreLib]]
cmp       [rsi],rcx
jne       near ptr M01_L34
mov       rdi,[rsi+10]
mov       rcx,offset Microsoft.Extensions.ObjectPool.StringBuilderPooledObjectPolicy.Return(System.Text.StringBuilder)
cmp       [rdi+18],rcx
jne       short M01_L30
mov       r14,[rbp-40]
mov       rcx,[r14+8]
mov       ecx,[rcx+8]
add       ecx,[r14+1C]
mov       rdx,[rdi+8]
cmp       ecx,[rdx+0C]
jg        near ptr M01_L35
mov       rcx,r14
xor       edx,edx
call      qword ptr [7FF9F60CC1F8]; System.Text.StringBuilder.set_Length(Int32)
jmp       short M01_L31
M01_L30
 
mov       rdx,[rbp-40]
mov       rcx,[rdi+8]
call      qword ptr [rdi+18]
test      eax,eax
mov       r14,[rbp-40]
je        short M01_L35
M01_L31
 
cmp       qword ptr [rsi+20],0
jne       short M01_L32
lea       rcx,[rsi+20]
mov       rdx,r14
xor       r8d,r8d
call      System.Threading.Interlocked.CompareExchange(System.Object ByRef, System.Object, System.Object)
test      rax,rax
je        short M01_L35
M01_L32
 
lea       rcx,[rsi+2C]
mov       edx,1
lock xadd [rcx],edx
inc       edx
cmp       edx,[rsi+28]
jg        short M01_L33
mov       rcx,[rsi+18]
mov       rdx,r14
cmp       [rcx],ecx
call      qword ptr [7FF9F65AEEE0]; System.Collections.Concurrent.ConcurrentQueue`1[[System.__Canon, System.Private.CoreLib]].Enqueue(System.__Canon)
jmp       short M01_L35
M01_L33
 
add       rsi,2C
lock dec  dword ptr [rsi]
jmp       short M01_L35
M01_L34
 
mov       r14,[rbp-40]
mov       rcx,rsi
mov       rdx,r14
mov       rax,[rsi]
mov       rax,[rax+40]
call      qword ptr [rax+28]
M01_L35
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.ComputeHash()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rcx,[rbx+298]
xor       edx,edx
call      qword ptr [7FF9F62BCE28]; DotNetTips.Spargine.Extensions.StringExtensions.ComputeHash(System.String, DotNetTips.Spargine.Extensions.HashType)
mov       [rsp+28],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.StringExtensions.ComputeHash(System.String, DotNetTips.Spargine.Extensions.HashType)
push      rbp
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbx
sub       rsp,40
lea       rbp,[rsp+70]
xor       eax,eax
mov       [rbp-48],rax
mov       [rbp-38],rax
mov       [rbp-50],rsp
mov       rbx,rcx
mov       esi,edx
test      rbx,rbx
je        near ptr M01_L22
mov       rcx,offset MT_System.CharEnumerator
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       dword ptr [rdi+10],0FFFFFFFF
lea       rcx,[rdi+8]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
mov       r14d,[rdi+10]
inc       r14d
mov       ecx,r14d
mov       rdx,[rdi+8]
mov       r15d,[rdx+8]
cmp       ecx,r15d
jge       near ptr M01_L04
mov       [rdi+10],ecx
mov       rcx,rbx
mov       edx,esi
call      qword ptr [7FF9F62BCDE0]; DotNetTips.Spargine.Extensions.StringExtensions.GetHash(System.String, DotNetTips.Spargine.Extensions.HashType)
mov       rbx,rax
mov       rcx,2A983C0EF38
mov       rcx,[rcx]
cmp       qword ptr [rcx+8],0
jne       near ptr M01_L23
mov       rcx,[rcx+18]
M01_L00
 
mov       rsi,rcx
mov       rcx,offset MT_Microsoft.Extensions.ObjectPool.DefaultObjectPool`1[[System.Text.StringBuilder, System.Private.CoreLib]]
cmp       [rsi],rcx
jne       near ptr M01_L26
mov       rcx,[rsi+20]
mov       [rbp-38],rcx
cmp       qword ptr [rbp-38],0
je        near ptr M01_L24
lea       rcx,[rsi+20]
mov       r8,[rbp-38]
xor       edx,edx
call      System.Threading.Interlocked.CompareExchange(System.Object ByRef, System.Object, System.Object)
cmp       rax,[rbp-38]
jne       near ptr M01_L24
M01_L01
 
mov       rdi,[rbp-38]
M01_L02
 
xor       ecx,ecx
mov       [rbp-38],rcx
M01_L03
 
cmp       [rdi],dil
mov       rcx,rdi
xor       edx,edx
call      qword ptr [7FF9F60DC1F8]; System.Text.StringBuilder.set_Length(Int32)
mov       [rbp-40],rdi
jmp       short M01_L05
M01_L04
 
mov       [rdi+10],r15d
jmp       near ptr M01_L22
M01_L05
 
test      rbx,rbx
je        near ptr M01_L07
lea       rsi,[rbx+10]
mov       ebx,[rbx+8]
xor       r15d,r15d
test      ebx,ebx
jle       near ptr M01_L15
M01_L06
 
mov       ecx,r15d
movzx     ecx,byte ptr [rsi+rcx]
mov       r8,2A983C00428
mov       r8,[r8]
mov       rdx,2EA119377F8
call      qword ptr [7FF9F6014810]; System.Number.g__FormatUInt32Slow|43_0(UInt32, System.String, System.IFormatProvider)
test      rax,rax
je        near ptr M01_L14
lea       rdx,[rax+0C]
mov       r8d,[rax+8]
test      r8d,r8d
je        near ptr M01_L14
mov       rcx,[rdi+8]
mov       eax,[rdi+18]
lea       r13d,[rax+r8]
cmp       r13d,[rcx+8]
ja        near ptr M01_L13
cdqe
lea       rcx,[rcx+rax*2+10]
cmp       r8d,2
jg        near ptr M01_L11
movzx     eax,word ptr [rdx]
mov       [rcx],ax
cmp       r8d,2
jne       near ptr M01_L12
movzx     r8d,word ptr [rdx+2]
mov       [rcx+2],r8w
jmp       near ptr M01_L12
M01_L07
 
call      qword ptr [7FF9F63552C0]
mov       ecx,0F
mov       rdx,7FF9F62D3C60
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1446
mov       rdx,7FF9F6165A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DD6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FF9F62D3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DD6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63550B0]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FF9F6066670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L08
 
mov       rcx,rbx
mov       edx,3
call      qword ptr [7FF9F5DD73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rbx,rax
jmp       near ptr M01_L20
M01_L09
 
mov       rax,rbx
jmp       near ptr M01_L21
M01_L10
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L11
 
movsxd    r8,r8d
add       r8,r8
call      qword ptr [7FF9F5E85B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
M01_L12
 
mov       [rdi+18],r13d
jmp       short M01_L14
M01_L13
 
mov       rcx,rdi
call      qword ptr [7FF9F60DCA98]; System.Text.StringBuilder.AppendWithExpansion(Char ByRef, Int32)
M01_L14
 
inc       r15d
cmp       r15d,ebx
jl        near ptr M01_L06
M01_L15
 
mov       rcx,rdi
call      qword ptr [7FF9F60E8140]; System.Text.StringBuilder.ToString()
mov       rbx,rax
test      rbx,rbx
je        short M01_L09
mov       rcx,offset MT_System.CharEnumerator
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       dword ptr [rsi+10],0FFFFFFFF
lea       rcx,[rsi+8]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rsi+8]
mov       ecx,[rcx+8]
cmp       r14d,ecx
jge       short M01_L16
mov       [rsi+10],r14d
cmp       dword ptr [rbx+8],0
je        short M01_L20
movzx     ecx,word ptr [rbx+0C]
cmp       ecx,100
jae       short M01_L17
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M01_L08
jmp       short M01_L18
M01_L16
 
mov       [rsi+10],ecx
jmp       near ptr M01_L09
M01_L17
 
call      qword ptr [7FF9F672E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M01_L08
M01_L18
 
mov       ecx,[rbx+8]
dec       ecx
cmp       ecx,[rbx+8]
jae       near ptr M01_L10
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M01_L19
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M01_L08
jmp       short M01_L20
M01_L19
 
call      qword ptr [7FF9F672E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M01_L08
M01_L20
 
mov       rax,rbx
M01_L21
 
mov       [rbp-48],rax
mov       rcx,rsp
call      M01_L27
nop
mov       rax,[rbp-48]
add       rsp,40
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L22
 
mov       rax,2EA11920008
add       rsp,40
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L23
 
call      qword ptr [7FF9F624EE68]; System.Lazy`1[[System.__Canon, System.Private.CoreLib]].CreateValue()
mov       rcx,rax
jmp       near ptr M01_L00
M01_L24
 
mov       rcx,[rsi+18]
lea       rdx,[rbp-38]
cmp       [rcx],ecx
call      qword ptr [7FF9F65BEF10]; System.Collections.Concurrent.ConcurrentQueue`1[[System.__Canon, System.Private.CoreLib]].TryDequeue(System.__Canon ByRef)
test      eax,eax
je        short M01_L25
add       rsi,2C
lock dec  dword ptr [rsi]
jmp       near ptr M01_L01
M01_L25
 
mov       rax,[rsi+8]
mov       rcx,[rax+8]
call      qword ptr [rax+18]
mov       rdi,rax
jmp       near ptr M01_L02
M01_L26
 
mov       rcx,rsi
mov       rax,[rsi]
mov       rax,[rax+40]
call      qword ptr [rax+20]
mov       rdi,rax
jmp       near ptr M01_L03
M01_L27
 
push      rbp
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbx
sub       rsp,30
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+70]
mov       rcx,2A983C0EF38
mov       rcx,[rcx]
cmp       qword ptr [rcx+8],0
je        short M01_L28
call      qword ptr [7FF9F624EE68]; System.Lazy`1[[System.__Canon, System.Private.CoreLib]].CreateValue()
mov       rsi,rax
jmp       short M01_L29
M01_L28
 
mov       rsi,[rcx+18]
M01_L29
 
mov       rcx,offset MT_Microsoft.Extensions.ObjectPool.DefaultObjectPool`1[[System.Text.StringBuilder, System.Private.CoreLib]]
cmp       [rsi],rcx
jne       near ptr M01_L34
mov       rdi,[rsi+10]
mov       rcx,offset Microsoft.Extensions.ObjectPool.StringBuilderPooledObjectPolicy.Return(System.Text.StringBuilder)
cmp       [rdi+18],rcx
jne       short M01_L30
mov       r14,[rbp-40]
mov       rcx,[r14+8]
mov       ecx,[rcx+8]
add       ecx,[r14+1C]
mov       rdx,[rdi+8]
cmp       ecx,[rdx+0C]
jg        near ptr M01_L35
mov       rcx,r14
xor       edx,edx
call      qword ptr [7FF9F60DC1F8]; System.Text.StringBuilder.set_Length(Int32)
jmp       short M01_L31
M01_L30
 
mov       rdx,[rbp-40]
mov       rcx,[rdi+8]
call      qword ptr [rdi+18]
test      eax,eax
mov       r14,[rbp-40]
je        short M01_L35
M01_L31
 
cmp       qword ptr [rsi+20],0
jne       short M01_L32
lea       rcx,[rsi+20]
mov       rdx,r14
xor       r8d,r8d
call      System.Threading.Interlocked.CompareExchange(System.Object ByRef, System.Object, System.Object)
test      rax,rax
je        short M01_L35
M01_L32
 
lea       rcx,[rsi+2C]
mov       edx,1
lock xadd [rcx],edx
inc       edx
cmp       edx,[rsi+28]
jg        short M01_L33
mov       rcx,[rsi+18]
mov       rdx,r14
cmp       [rcx],ecx
call      qword ptr [7FF9F65BEEE0]; System.Collections.Concurrent.ConcurrentQueue`1[[System.__Canon, System.Private.CoreLib]].Enqueue(System.__Canon)
jmp       short M01_L35
M01_L33
 
add       rsi,2C
lock dec  dword ptr [rsi]
jmp       short M01_L35
M01_L34
 
mov       r14,[rbp-40]
mov       rcx,rsi
mov       rdx,r14
mov       rax,[rsi]
mov       rax,[rax+40]
call      qword ptr [rax+28]
M01_L35
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.ComputeHash()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rcx,[rbx+298]
xor       edx,edx
call      qword ptr [7FF9F629CE28]; DotNetTips.Spargine.Extensions.StringExtensions.ComputeHash(System.String, DotNetTips.Spargine.Extensions.HashType)
mov       [rsp+28],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.StringExtensions.ComputeHash(System.String, DotNetTips.Spargine.Extensions.HashType)
push      rbp
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbx
sub       rsp,40
lea       rbp,[rsp+70]
xor       eax,eax
mov       [rbp-48],rax
mov       [rbp-38],rax
mov       [rbp-50],rsp
mov       rbx,rcx
mov       esi,edx
test      rbx,rbx
je        near ptr M01_L22
mov       rcx,offset MT_System.CharEnumerator
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       dword ptr [rdi+10],0FFFFFFFF
lea       rcx,[rdi+8]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
mov       r14d,[rdi+10]
inc       r14d
mov       ecx,r14d
mov       rdx,[rdi+8]
mov       r15d,[rdx+8]
cmp       ecx,r15d
jge       near ptr M01_L04
mov       [rdi+10],ecx
mov       rcx,rbx
mov       edx,esi
call      qword ptr [7FF9F629CDE0]; DotNetTips.Spargine.Extensions.StringExtensions.GetHash(System.String, DotNetTips.Spargine.Extensions.HashType)
mov       rbx,rax
mov       rcx,28CB740EF38
mov       rcx,[rcx]
cmp       qword ptr [rcx+8],0
jne       near ptr M01_L23
mov       rcx,[rcx+18]
M01_L00
 
mov       rsi,rcx
mov       rcx,offset MT_Microsoft.Extensions.ObjectPool.DefaultObjectPool`1[[System.Text.StringBuilder, System.Private.CoreLib]]
cmp       [rsi],rcx
jne       near ptr M01_L26
mov       rcx,[rsi+20]
mov       [rbp-38],rcx
cmp       qword ptr [rbp-38],0
je        near ptr M01_L24
lea       rcx,[rsi+20]
mov       r8,[rbp-38]
xor       edx,edx
call      System.Threading.Interlocked.CompareExchange(System.Object ByRef, System.Object, System.Object)
cmp       rax,[rbp-38]
jne       near ptr M01_L24
M01_L01
 
mov       rdi,[rbp-38]
M01_L02
 
xor       ecx,ecx
mov       [rbp-38],rcx
M01_L03
 
cmp       [rdi],dil
mov       rcx,rdi
xor       edx,edx
call      qword ptr [7FF9F60BC1F8]; System.Text.StringBuilder.set_Length(Int32)
mov       [rbp-40],rdi
jmp       short M01_L05
M01_L04
 
mov       [rdi+10],r15d
jmp       near ptr M01_L22
M01_L05
 
test      rbx,rbx
je        near ptr M01_L07
lea       rsi,[rbx+10]
mov       ebx,[rbx+8]
xor       r15d,r15d
test      ebx,ebx
jle       near ptr M01_L15
M01_L06
 
mov       ecx,r15d
movzx     ecx,byte ptr [rsi+rcx]
mov       r8,28CB7400428
mov       r8,[r8]
mov       rdx,2CD451D77F8
call      qword ptr [7FF9F5FF4810]; System.Number.g__FormatUInt32Slow|43_0(UInt32, System.String, System.IFormatProvider)
test      rax,rax
je        near ptr M01_L14
lea       rdx,[rax+0C]
mov       r8d,[rax+8]
test      r8d,r8d
je        near ptr M01_L14
mov       rcx,[rdi+8]
mov       eax,[rdi+18]
lea       r13d,[rax+r8]
cmp       r13d,[rcx+8]
ja        near ptr M01_L13
cdqe
lea       rcx,[rcx+rax*2+10]
cmp       r8d,2
jg        near ptr M01_L11
movzx     eax,word ptr [rdx]
mov       [rcx],ax
cmp       r8d,2
jne       near ptr M01_L12
movzx     r8d,word ptr [rdx+2]
mov       [rcx+2],r8w
jmp       near ptr M01_L12
M01_L07
 
call      qword ptr [7FF9F63352C0]
mov       ecx,0F
mov       rdx,7FF9F62B3C60
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1446
mov       rdx,7FF9F6145A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DB6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FF9F62B3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DB6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63350B0]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FF9F6046670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L08
 
mov       rcx,rbx
mov       edx,3
call      qword ptr [7FF9F5DB73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rbx,rax
jmp       near ptr M01_L20
M01_L09
 
mov       rax,rbx
jmp       near ptr M01_L21
M01_L10
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L11
 
movsxd    r8,r8d
add       r8,r8
call      qword ptr [7FF9F5E65B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
M01_L12
 
mov       [rdi+18],r13d
jmp       short M01_L14
M01_L13
 
mov       rcx,rdi
call      qword ptr [7FF9F60BCA98]; System.Text.StringBuilder.AppendWithExpansion(Char ByRef, Int32)
M01_L14
 
inc       r15d
cmp       r15d,ebx
jl        near ptr M01_L06
M01_L15
 
mov       rcx,rdi
call      qword ptr [7FF9F60C8140]; System.Text.StringBuilder.ToString()
mov       rbx,rax
test      rbx,rbx
je        short M01_L09
mov       rcx,offset MT_System.CharEnumerator
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       dword ptr [rsi+10],0FFFFFFFF
lea       rcx,[rsi+8]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rsi+8]
mov       ecx,[rcx+8]
cmp       r14d,ecx
jge       short M01_L16
mov       [rsi+10],r14d
cmp       dword ptr [rbx+8],0
je        short M01_L20
movzx     ecx,word ptr [rbx+0C]
cmp       ecx,100
jae       short M01_L17
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M01_L08
jmp       short M01_L18
M01_L16
 
mov       [rsi+10],ecx
jmp       near ptr M01_L09
M01_L17
 
call      qword ptr [7FF9F670E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M01_L08
M01_L18
 
mov       ecx,[rbx+8]
dec       ecx
cmp       ecx,[rbx+8]
jae       near ptr M01_L10
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M01_L19
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M01_L08
jmp       short M01_L20
M01_L19
 
call      qword ptr [7FF9F670E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M01_L08
M01_L20
 
mov       rax,rbx
M01_L21
 
mov       [rbp-48],rax
mov       rcx,rsp
call      M01_L27
nop
mov       rax,[rbp-48]
add       rsp,40
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L22
 
mov       rax,2CD451C0008
add       rsp,40
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L23
 
call      qword ptr [7FF9F622EE68]; System.Lazy`1[[System.__Canon, System.Private.CoreLib]].CreateValue()
mov       rcx,rax
jmp       near ptr M01_L00
M01_L24
 
mov       rcx,[rsi+18]
lea       rdx,[rbp-38]
cmp       [rcx],ecx
call      qword ptr [7FF9F659EBF8]; System.Collections.Concurrent.ConcurrentQueue`1[[System.__Canon, System.Private.CoreLib]].TryDequeue(System.__Canon ByRef)
test      eax,eax
je        short M01_L25
add       rsi,2C
lock dec  dword ptr [rsi]
jmp       near ptr M01_L01
M01_L25
 
mov       rax,[rsi+8]
mov       rcx,[rax+8]
call      qword ptr [rax+18]
mov       rdi,rax
jmp       near ptr M01_L02
M01_L26
 
mov       rcx,rsi
mov       rax,[rsi]
mov       rax,[rax+40]
call      qword ptr [rax+20]
mov       rdi,rax
jmp       near ptr M01_L03
M01_L27
 
push      rbp
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbx
sub       rsp,30
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+70]
mov       rcx,28CB740EF38
mov       rcx,[rcx]
cmp       qword ptr [rcx+8],0
je        short M01_L28
call      qword ptr [7FF9F622EE68]; System.Lazy`1[[System.__Canon, System.Private.CoreLib]].CreateValue()
mov       rsi,rax
jmp       short M01_L29
M01_L28
 
mov       rsi,[rcx+18]
M01_L29
 
mov       rcx,offset MT_Microsoft.Extensions.ObjectPool.DefaultObjectPool`1[[System.Text.StringBuilder, System.Private.CoreLib]]
cmp       [rsi],rcx
jne       near ptr M01_L34
mov       rdi,[rsi+10]
mov       rcx,offset Microsoft.Extensions.ObjectPool.StringBuilderPooledObjectPolicy.Return(System.Text.StringBuilder)
cmp       [rdi+18],rcx
jne       short M01_L30
mov       r14,[rbp-40]
mov       rcx,[r14+8]
mov       ecx,[rcx+8]
add       ecx,[r14+1C]
mov       rdx,[rdi+8]
cmp       ecx,[rdx+0C]
jg        near ptr M01_L35
mov       rcx,r14
xor       edx,edx
call      qword ptr [7FF9F60BC1F8]; System.Text.StringBuilder.set_Length(Int32)
jmp       short M01_L31
M01_L30
 
mov       rdx,[rbp-40]
mov       rcx,[rdi+8]
call      qword ptr [rdi+18]
test      eax,eax
mov       r14,[rbp-40]
je        short M01_L35
M01_L31
 
cmp       qword ptr [rsi+20],0
jne       short M01_L32
lea       rcx,[rsi+20]
mov       rdx,r14
xor       r8d,r8d
call      System.Threading.Interlocked.CompareExchange(System.Object ByRef, System.Object, System.Object)
test      rax,rax
je        short M01_L35
M01_L32
 
lea       rcx,[rsi+2C]
mov       edx,1
lock xadd [rcx],edx
inc       edx
cmp       edx,[rsi+28]
jg        short M01_L33
mov       rcx,[rsi+18]
mov       rdx,r14
cmp       [rcx],ecx
call      qword ptr [7FF9F659EBC8]; System.Collections.Concurrent.ConcurrentQueue`1[[System.__Canon, System.Private.CoreLib]].Enqueue(System.__Canon)
jmp       short M01_L35
M01_L33
 
add       rsi,2C
lock dec  dword ptr [rsi]
jmp       short M01_L35
M01_L34
 
mov       r14,[rbp-40]
mov       rcx,rsi
mov       rdx,r14
mov       rax,[rsi]
mov       rax,[rax+40]
call      qword ptr [rax+28]
M01_L35
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.SplitWithRemoveEmptyEntries()
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,48
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
xor       eax,eax
mov       [rbp-40],rax
mov       [rbp-60],rsp
mov       rbx,rcx
mov       rsi,[rbx+298]
test      rsi,rsi
je        short M00_L00
xor       ecx,ecx
cmp       dword ptr [rsi+8],0
sete      cl
test      ecx,ecx
sete      cl
movzx     ecx,cl
cmp       dword ptr [rsi+8],0
jne       short M00_L01
jmp       short M00_L01
M00_L00
 
xor       ecx,ecx
M00_L01
 
test      ecx,ecx
je        near ptr M00_L23
cmp       dword ptr [rsi+8],0
je        short M00_L05
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       short M00_L02
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L25
jmp       short M00_L03
M00_L02
 
call      qword ptr [7FF9F68AF2E8]
test      eax,eax
jne       near ptr M00_L25
M00_L03
 
mov       ecx,[rsi+8]
dec       ecx
cmp       ecx,[rsi+8]
jae       near ptr M00_L31
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L04
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L25
jmp       short M00_L05
M00_L04
 
call      qword ptr [7FF9F68AF2E8]
test      eax,eax
jne       near ptr M00_L25
M00_L05
 
mov       rcx,offset MT_System.StringSplitOptions
call      CORINFO_HELP_NEWSFAST
mov       dword ptr [rax+8],1
mov       rdx,rax
mov       rcx,221D2C277D8
cmp       [rcx],ecx
call      qword ptr [7FF9F5CFA770]; System.RuntimeType.IsEnumDefined(System.Object)
test      eax,eax
je        near ptr M00_L26
mov       rcx,offset MT_System.Char[]
mov       edx,1
call      CORINFO_HELP_NEWARR_1_VC
mov       word ptr [rax+10],2E
cmp       [rsi],sil
add       rax,10
mov       rcx,rsi
mov       [rbp-50],rax
mov       dword ptr [rbp-48],1
lea       rdx,[rbp-50]
mov       r9d,1
mov       r8d,7FFFFFFF
call      qword ptr [7FF9F5DB70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
mov       rsi,rax
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyCollection`1[[System.String, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
test      rsi,rsi
je        near ptr M00_L28
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+8]
mov       r11,7FF9F5C710E0
call      qword ptr [r11]
test      eax,eax
je        near ptr M00_L29
mov       rcx,[rdi+8]
mov       r11,7FF9F5C710E8
call      qword ptr [r11]
mov       rsi,rax
M00_L06
 
mov       [rbp-58],rsi
test      rsi,rsi
je        near ptr M00_L15
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
jne       near ptr M00_L15
jmp       short M00_L09
M00_L07
 
mov       r10,rsi
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       near ptr M00_L18
mov       r13,[r10+10]
cmp       r9d,[r13+8]
jae       short M00_L10
mov       ecx,r9d
mov       r12,[r13+rcx*8+10]
M00_L08
 
mov       [rbp-40],r12
mov       r12,[rbx+18]
mov       rdx,[rbp-40]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
M00_L09
 
cmp       rdi,r14
jne       short M00_L12
mov       rax,rsi
mov       r8d,[rax+8]
inc       r8d
mov       r15d,[rax+0C]
cmp       r8d,r15d
jae       short M00_L11
mov       [rax+8],r8d
jmp       short M00_L07
M00_L10
 
call      CORINFO_HELP_RNGCHKFAIL
M00_L11
 
mov       [rax+8],r15d
jmp       near ptr M00_L21
M00_L12
 
mov       rcx,rsi
mov       r11,7FF9F5C710C8
call      qword ptr [r11]
test      eax,eax
jne       near ptr M00_L19
jmp       near ptr M00_L21
M00_L13
 
mov       r10,rsi
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       short M00_L18
mov       r13,[r10+10]
cmp       r9d,[r13+8]
jae       short M00_L10
mov       ecx,r9d
mov       r12,[r13+rcx*8+10]
M00_L14
 
mov       [rbp-40],r12
mov       r12,[rbx+18]
mov       rdx,[rbp-40]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
M00_L15
 
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
jne       short M00_L16
mov       rax,rsi
mov       r8d,[rax+8]
inc       r8d
mov       r15d,[rax+0C]
cmp       r8d,r15d
jae       short M00_L17
mov       [rax+8],r8d
jmp       short M00_L13
M00_L16
 
mov       rcx,rsi
mov       r11,7FF9F5C710C8
call      qword ptr [r11]
test      eax,eax
jne       short M00_L20
jmp       short M00_L21
M00_L17
 
mov       [rax+8],r15d
jmp       short M00_L21
M00_L18
 
mov       ecx,[r10+8]
call      qword ptr [7FF9F601EFD0]
int       3
M00_L19
 
mov       rcx,rsi
mov       r11,7FF9F5C710D0
call      qword ptr [r11]
mov       r12,rax
jmp       near ptr M00_L08
M00_L20
 
mov       rcx,rsi
mov       r11,7FF9F5C710D0
call      qword ptr [r11]
mov       r12,rax
jmp       near ptr M00_L14
M00_L21
 
cmp       rdi,r14
jne       near ptr M00_L30
M00_L22
 
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M00_L23
 
call      qword ptr [7FF9F6335368]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L24
call      qword ptr [7FF9F63350B0]
mov       rbx,rax
M00_L24
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,221D2C18468
mov       r8,rbx
call      qword ptr [7FF9F6046670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L25
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DB73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L05
M00_L26
 
call      qword ptr [7FF9F6335170]
mov       rdi,rax
test      rdi,rdi
jne       short M00_L27
call      qword ptr [7FF9F63350C8]
mov       rdi,rax
M00_L27
 
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,221D2C19EE0
mov       r8,rdi
call      qword ptr [7FF9F5E6D470]
mov       rcx,r14
call      CORINFO_HELP_THROW
M00_L28
 
mov       ecx,14
call      qword ptr [7FF9F601ED00]
int       3
M00_L29
 
mov       rcx,7FF9F5CF5120
mov       edx,20
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,1E140C01FF8
mov       rsi,[rcx]
jmp       near ptr M00_L06
M00_L30
 
mov       rcx,rsi
mov       r11,7FF9F5C710D8
call      qword ptr [r11]
jmp       near ptr M00_L22
M00_L31
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M00_L32
mov       rsi,[rbp-58]
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
je        short M00_L32
mov       rcx,rsi
mov       r11,7FF9F5C710D8
call      qword ptr [r11]
M00_L32
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.RuntimeType.IsEnumDefined(System.Object)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
vzeroupper
mov       rbx,rcx
mov       rsi,rdx
M01_L00
 
test      rsi,rsi
je        near ptr M01_L24
mov       rcx,[rbx+18]
mov       rax,rcx
test      cl,2
jne       short M01_L01
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M01_L02
M01_L01
 
xor       ecx,ecx
M01_L02
 
movzx     ecx,cl
test      ecx,ecx
je        near ptr M01_L26
mov       rcx,rsi
call      System.Object.GetType()
mov       rdi,rax
mov       rcx,[rdi+18]
mov       rax,rcx
test      cl,2
jne       short M01_L03
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M01_L04
M01_L03
 
xor       ecx,ecx
M01_L04
 
movzx     ecx,cl
test      ecx,ecx
je        short M01_L08
cmp       rbx,rdi
jne       near ptr M01_L25
M01_L05
 
mov       rcx,[rdi+18]
mov       rax,rcx
mov       rdx,rax
test      al,2
jne       short M01_L06
mov       rax,[rdx+10]
mov       rdx,offset MT_System.Enum
cmp       rax,rdx
sete      al
movzx     eax,al
jmp       short M01_L07
M01_L06
 
xor       eax,eax
M01_L07
 
movzx     eax,al
test      eax,eax
je        near ptr M01_L26
mov       rax,1E140C000A0
mov       rbp,[rax]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M01_L60
mov       ecx,eax
mov       rcx,[rbp+rcx*8+10]
mov       rdi,rcx
M01_L08
 
mov       rcx,221D2C10020
cmp       rdi,rcx
je        near ptr M01_L27
mov       rcx,rdi
call      qword ptr [7FF9F5D06070]; System.Type.IsIntegerType(System.Type)
test      eax,eax
je        near ptr M01_L29
mov       rcx,1E140C000A0
mov       rbp,[rcx]
mov       rcx,[rbx+18]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M01_L60
mov       ecx,eax
mov       rbp,[rbp+rcx*8+10]
cmp       rbp,rdi
jne       near ptr M01_L30
test      rbp,rbp
je        near ptr M01_L23
mov       rcx,[rbp+10]
test      rcx,rcx
je        near ptr M01_L19
mov       rax,[rcx]
test      rax,rax
je        near ptr M01_L19
M01_L09
 
mov       edi,[rax+90]
test      edi,edi
je        near ptr M01_L40
M01_L10
 
add       edi,0FFFFFFFC
cmp       edi,5
jne       near ptr M01_L22
mov       rdx,offset MT_System.Int32
cmp       [rsi],rdx
je        short M01_L11
mov       rdx,rsi
mov       rcx,offset MT_System.Int32
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
M01_L11
 
mov       r14d,[rsi+8]
mov       rcx,[rbx+10]
test      rcx,rcx
je        short M01_L20
mov       rcx,[rcx]
M01_L12
 
test      rcx,rcx
je        short M01_L15
mov       rax,[rcx+78]
M01_L13
 
test      rax,rax
je        short M01_L14
mov       rcx,offset MT_System.Enum+EnumInfo`1[[System.UInt32, System.Private.CoreLib]]
cmp       [rax],rcx
je        short M01_L17
M01_L14
 
mov       rcx,rbx
xor       edx,edx
call      qword ptr [7FF9F61D7528]; System.Enum.g__InitializeEnumInfo|7_0[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, Boolean)
jmp       short M01_L17
M01_L15
 
xor       eax,eax
jmp       short M01_L13
M01_L16
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L17
 
mov       r15,[rax+8]
cmp       byte ptr [rax+19],0
je        near ptr M01_L31
mov       eax,r14d
mov       edx,[r15+8]
cmp       rdx,rax
seta      al
movzx     eax,al
M01_L18
 
jmp       short M01_L16
M01_L19
 
mov       rcx,rbp
call      qword ptr [7FF9F5D06658]; System.RuntimeType.InitializeCache()
jmp       near ptr M01_L09
M01_L20
 
xor       ecx,ecx
jmp       short M01_L12
mov       rcx,offset MT_System.Char
cmp       [rsi],rcx
je        short M01_L21
mov       rdx,rsi
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
M01_L21
 
movzx     edx,word ptr [rsi+8]
mov       rcx,rbx
call      qword ptr [7FF9F6A05D40]
jmp       short M01_L16
M01_L22
 
cmp       edi,0A
ja        near ptr M01_L36
mov       edx,edi
lea       rcx,[7FF9F690BF30]
mov       ecx,[rcx+rdx*4]
lea       rax,[M01_L00]
add       rcx,rax
jmp       rcx
M01_L23
 
xor       edi,edi
jmp       near ptr M01_L10
mov       rdx,rsi
mov       rcx,offset MT_System.SByte
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A05D28]
jmp       near ptr M01_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Byte
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A05D28]
jmp       near ptr M01_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Int16
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A05D10]
jmp       near ptr M01_L16
mov       rdx,rsi
mov       rcx,offset MT_System.UInt16
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A05D10]
jmp       near ptr M01_L16
M01_L24
 
mov       ecx,2E5
mov       rdx,7FF9F5C64000
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FF9F60466E8]
int       3
M01_L25
 
mov       rcx,rdi
mov       rdx,rbx
call      System.RuntimeTypeHandle.IsEquivalentTo(System.RuntimeType, System.RuntimeType)
test      eax,eax
jne       near ptr M01_L05
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F636CD98]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbx
call      qword ptr [7FF9F636C768]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F5DBF708]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L26
 
call      qword ptr [7FF9F5D07138]
int       3
M01_L27
 
mov       rcx,rbx
call      qword ptr [7FF9F5D04918]; System.Enum.GetNamesNoCopy(System.RuntimeType)
mov       r8,rsi
mov       rcx,offset MT_System.String
cmp       [r8],rcx
je        short M01_L28
mov       rdx,rsi
call      qword ptr [7FF9F5DB43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M01_L28
 
mov       rdx,rax
mov       rcx,offset MD_System.Array.IndexOf[[System.String, System.Private.CoreLib]](System.String[], System.String)
call      qword ptr [7FF9F6877AF8]
not       eax
shr       eax,1F
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L29
 
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F6395170]
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F6046718]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L30
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F636CDF8]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbp
call      qword ptr [7FF9F636C768]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F5DBF708]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L31
 
test      r15,r15
jne       short M01_L32
xor       ecx,ecx
xor       r8d,r8d
jmp       short M01_L33
M01_L32
 
lea       rcx,[r15+10]
mov       r8d,[r15+8]
M01_L33
 
cmp       dword ptr [r15+8],20
jle       short M01_L34
mov       edx,r8d
mov       r8d,r14d
call      qword ptr [7FF9F6A07A98]
jmp       short M01_L35
M01_L34
 
mov       edx,r14d
call      qword ptr [7FF9F6A07F60]; System.SpanHelpers.NonPackedIndexOfValueType[[System.Int32, System.Private.CoreLib],[System.SpanHelpers+DontNegate`1[[System.Int32, System.Private.CoreLib]], System.Private.CoreLib]](Int32 ByRef, Int32, Int32)
M01_L35
 
not       eax
shr       eax,1F
jmp       near ptr M01_L18
mov       rdx,rsi
mov       rcx,offset MT_System.UInt32
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       edx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6877B28]; System.Enum.IsDefinedPrimitive[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, UInt32)
jmp       near ptr M01_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Int64
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A05608]
jmp       near ptr M01_L16
mov       rdx,rsi
mov       rcx,offset MT_System.UInt64
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A05608]
jmp       near ptr M01_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Single
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovss    xmm1,dword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A04F00]
jmp       near ptr M01_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Double
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovsd    xmm1,qword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A04EE8]
jmp       near ptr M01_L16
M01_L36
 
mov       rcx,221D2C14010
cmp       rbp,rcx
je        short M01_L38
mov       rcx,221D2C16560
cmp       rbp,rcx
je        short M01_L37
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F6395170]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F6046718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L37
 
mov       rdx,rsi
mov       rcx,offset MT_System.UIntPtr
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A047E0]
jmp       short M01_L39
M01_L38
 
mov       rdx,rsi
mov       rcx,offset MT_System.IntPtr
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A047E0]
M01_L39
 
movzx     eax,al
jmp       near ptr M01_L16
M01_L40
 
mov       r15,rbp
mov       rcx,r15
call      qword ptr [7FF9F5D06AA8]; System.RuntimeType.get_IsActualEnum()
test      eax,eax
je        short M01_L41
mov       rcx,rbp
call      qword ptr [7FF9F5CFA728]; System.RuntimeType.GetEnumUnderlyingType()
mov       r15,rax
test      r15,r15
je        short M01_L41
mov       rcx,offset MT_System.RuntimeType
cmp       [r15],rcx
je        short M01_L41
mov       rdx,rax
call      qword ptr [7FF9F5DB43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M01_L41
 
mov       rcx,221D2C16498
cmp       r15,rcx
jne       short M01_L42
mov       edi,5
jmp       near ptr M01_L57
M01_L42
 
mov       rcx,221D2C14198
cmp       r15,rcx
jne       short M01_L43
mov       edi,6
jmp       near ptr M01_L57
M01_L43
 
mov       rcx,221D2C164C0
cmp       r15,rcx
jne       short M01_L44
mov       edi,7
jmp       near ptr M01_L57
M01_L44
 
mov       rcx,221D2C14038
cmp       r15,rcx
jne       short M01_L45
mov       edi,8
jmp       near ptr M01_L57
M01_L45
 
mov       rcx,221D2C14248
cmp       r15,rcx
jne       short M01_L46
mov       edi,9
jmp       near ptr M01_L57
M01_L46
 
mov       rcx,221D2C13F48
cmp       r15,rcx
jne       short M01_L47
mov       edi,0A
jmp       near ptr M01_L57
M01_L47
 
mov       rcx,221D2C164E8
cmp       r15,rcx
jne       short M01_L48
mov       edi,0B
jmp       near ptr M01_L57
M01_L48
 
mov       rcx,221D2C13D90
cmp       r15,rcx
jne       short M01_L49
mov       edi,0C
jmp       near ptr M01_L57
M01_L49
 
mov       rcx,221D2C16448
cmp       r15,rcx
jne       short M01_L50
mov       edi,3
jmp       near ptr M01_L57
M01_L50
 
mov       rcx,221D2C16470
cmp       r15,rcx
jne       short M01_L51
mov       edi,4
jmp       near ptr M01_L57
M01_L51
 
mov       rcx,221D2C16510
cmp       r15,rcx
jne       short M01_L52
mov       edi,0D
jmp       short M01_L57
M01_L52
 
mov       rcx,221D2C16538
cmp       r15,rcx
jne       short M01_L53
mov       edi,0E
jmp       short M01_L57
M01_L53
 
mov       rcx,221D2C171E0
cmp       r15,rcx
jne       short M01_L54
mov       edi,0F
jmp       short M01_L57
M01_L54
 
mov       rcx,221D2C13C08
cmp       r15,rcx
jne       short M01_L55
mov       edi,10
jmp       short M01_L57
M01_L55
 
mov       rcx,221D2C10020
cmp       r15,rcx
jne       short M01_L56
mov       edi,12
jmp       short M01_L57
M01_L56
 
mov       rcx,221D2C253E0
mov       edi,1
mov       eax,2
cmp       r15,rcx
cmove     edi,eax
M01_L57
 
cmp       qword ptr [rbp+10],0
je        short M01_L58
mov       rcx,[rbp+10]
mov       rax,[rcx]
test      rax,rax
je        short M01_L58
jmp       short M01_L59
M01_L58
 
mov       rcx,rbp
call      qword ptr [7FF9F5D06658]; System.RuntimeType.InitializeCache()
M01_L59
 
mov       [rax+90],edi
jmp       near ptr M01_L10
M01_L60
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,98
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
vmovdqa   xmmword ptr [rbp+20],xmm4
vmovdqa   xmmword ptr [rbp+30],xmm4
vmovdqa   xmmword ptr [rbp+40],xmm4
vmovdqa   xmmword ptr [rbp+50],xmm4
mov       [rbp+60],rax
mov       rax,0F1ACB57F5C1B
mov       [rbp],rax
mov       rsi,rcx
mov       rbx,rdx
mov       edi,r8d
mov       r14d,r9d
test      edi,edi
jl        near ptr M02_L06
test      r14d,0FFFFFFFC
jne       near ptr M02_L07
M02_L00
 
cmp       edi,1
jle       near ptr M02_L08
mov       r15d,[rsi+8]
test      r15d,r15d
je        near ptr M02_L08
cmp       dword ptr [rbx+8],0
je        near ptr M02_L10
M02_L01
 
test      [rsp],esp
sub       rsp,200
lea       rcx,[rsp+30]
mov       [rbp+58],rcx
mov       dword ptr [rbp+60],80
xor       ecx,ecx
mov       [rbp+48],rcx
mov       [rbp+50],ecx
lea       rcx,[rsi+0C]
mov       [rbp+38],rcx
mov       [rbp+40],r15d
vmovdqu   xmm0,xmmword ptr [rbx]
vmovdqu   xmmword ptr [rbp+28],xmm0
lea       rcx,[rbp+38]
lea       rdx,[rbp+28]
lea       r8,[rbp+48]
call      qword ptr [7FF9F5DB71B0]; System.String.MakeSeparatorListAny(System.ReadOnlySpan`1, System.ReadOnlySpan`1, System.Collections.Generic.ValueListBuilder`1 ByRef)
mov       eax,[rbp+50]
cmp       eax,[rbp+60]
ja        near ptr M02_L11
mov       r10,[rbp+58]
test      eax,eax
je        near ptr M02_L12
test      r14d,r14d
je        near ptr M02_L05
xor       ecx,ecx
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],rcx
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       [rsp+28],r14d
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DB7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       rbx,rax
M02_L02
 
mov       rdx,[rbp+48]
test      rdx,rdx
je        short M02_L03
xor       ecx,ecx
mov       [rbp+48],rcx
mov       rcx,1E140C01F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65B5168]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M02_L03
 
mov       rax,rbx
mov       rcx,0F1ACB57F5C1B
cmp       [rbp],rcx
je        short M02_L04
call      CORINFO_HELP_FAIL_FAST
M02_L04
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M02_L05
 
xor       r14d,r14d
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],r14
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DB7180]
mov       rbx,rax
jmp       short M02_L02
M02_L06
 
mov       ecx,1C7
mov       rdx,7FF9F5C64000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,edi
call      qword ptr [7FF9F687F000]
int       3
M02_L07
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F601ECB8]
int       3
M02_L08
 
mov       rcx,rsi
mov       edx,r14d
mov       r8d,edi
call      qword ptr [7FF9F5DB7150]; System.String.CreateSplitArrayOfThisAsSoleValue(System.StringSplitOptions, Int32)
mov       rcx,0F1ACB57F5C1B
cmp       [rbp],rcx
je        short M02_L09
call      CORINFO_HELP_FAIL_FAST
M02_L09
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M02_L10
 
cmp       r15d,edi
jge       near ptr M02_L01
and       r14d,0FFFFFFFD
jmp       near ptr M02_L01
M02_L11
 
call      qword ptr [7FF9F601E9D0]
int       3
M02_L12
 
mov       edi,1
jmp       near ptr M02_L00
 
System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,edx
mov       edi,[rbx+8]
lea       ebp,[rdi-1]
mov       r14d,ebp
xor       r15d,r15d
test      sil,1
je        short M03_L03
xor       r15d,r15d
test      edi,edi
jle       short M03_L03
M03_L00
 
mov       ecx,r15d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M03_L01
mov       rax,[7FFA534C0728]
test      byte ptr [rax+rcx],80
je        short M03_L03
jmp       short M03_L02
M03_L01
 
call      qword ptr [7FFA534A7338]
test      eax,eax
je        short M03_L03
M03_L02
 
inc       r15d
cmp       edi,r15d
jg        short M03_L00
M03_L03
 
test      sil,2
je        near ptr M03_L10
mov       r14d,ebp
cmp       r14d,r15d
jl        short M03_L10
mov       ecx,r14d
or        ecx,r15d
jl        short M03_L07
cmp       edi,r14d
jle       short M03_L07
M03_L04
 
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M03_L05
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M03_L10
jmp       short M03_L06
M03_L05
 
call      qword ptr [7FFA534A7338]
test      eax,eax
je        short M03_L10
M03_L06
 
dec       r14d
cmp       r14d,r15d
jge       short M03_L04
jmp       short M03_L10
M03_L07
 
cmp       r14d,edi
jae       short M03_L14
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M03_L08
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M03_L10
jmp       short M03_L09
M03_L08
 
call      qword ptr [7FFA534A7338]
test      eax,eax
je        short M03_L10
M03_L09
 
dec       r14d
cmp       r14d,r15d
jge       short M03_L07
M03_L10
 
mov       r8d,r14d
sub       r8d,r15d
inc       r8d
cmp       edi,r8d
jne       short M03_L12
mov       rax,rbx
M03_L11
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L12
 
test      r8d,r8d
je        short M03_L13
mov       rcx,rbx
mov       edx,r15d
call      qword ptr [7FFA534A34A0]; Precode of System.String.InternalSubString(Int32, Int32)
jmp       short M03_L11
M03_L13
 
mov       rax,[7FFA534C08A0]
mov       rax,[rax]
jmp       short M03_L11
M03_L14
 
call      qword ptr [7FFA53493D20]; CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.SplitWithRemoveEmptyEntries()
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,48
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
xor       eax,eax
mov       [rbp-40],rax
mov       [rbp-60],rsp
mov       rbx,rcx
mov       rsi,[rbx+298]
test      rsi,rsi
je        short M00_L00
xor       ecx,ecx
cmp       dword ptr [rsi+8],0
sete      cl
test      ecx,ecx
sete      cl
movzx     ecx,cl
cmp       dword ptr [rsi+8],0
jne       short M00_L01
jmp       short M00_L01
M00_L00
 
xor       ecx,ecx
M00_L01
 
test      ecx,ecx
je        near ptr M00_L23
cmp       dword ptr [rsi+8],0
je        short M00_L05
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       short M00_L02
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L25
jmp       short M00_L03
M00_L02
 
call      qword ptr [7FF9F68CF2E8]
test      eax,eax
jne       near ptr M00_L25
M00_L03
 
mov       ecx,[rsi+8]
dec       ecx
cmp       ecx,[rsi+8]
jae       near ptr M00_L31
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L04
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L25
jmp       short M00_L05
M00_L04
 
call      qword ptr [7FF9F68CF2E8]
test      eax,eax
jne       near ptr M00_L25
M00_L05
 
mov       rcx,offset MT_System.StringSplitOptions
call      CORINFO_HELP_NEWSFAST
mov       dword ptr [rax+8],1
mov       rdx,rax
mov       rcx,2EF5CDC77D8
cmp       [rcx],ecx
call      qword ptr [7FF9F5D1A770]; System.RuntimeType.IsEnumDefined(System.Object)
test      eax,eax
je        near ptr M00_L26
mov       rcx,offset MT_System.Char[]
mov       edx,1
call      CORINFO_HELP_NEWARR_1_VC
mov       word ptr [rax+10],2E
cmp       [rsi],sil
add       rax,10
mov       rcx,rsi
mov       [rbp-50],rax
mov       dword ptr [rbp-48],1
lea       rdx,[rbp-50]
mov       r9d,1
mov       r8d,7FFFFFFF
call      qword ptr [7FF9F5DD70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
mov       rsi,rax
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyCollection`1[[System.String, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
test      rsi,rsi
je        near ptr M00_L28
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+8]
mov       r11,7FF9F5C910E0
call      qword ptr [r11]
test      eax,eax
je        near ptr M00_L29
mov       rcx,[rdi+8]
mov       r11,7FF9F5C910E8
call      qword ptr [r11]
mov       rsi,rax
M00_L06
 
mov       [rbp-58],rsi
test      rsi,rsi
je        near ptr M00_L15
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
jne       near ptr M00_L15
jmp       short M00_L09
M00_L07
 
mov       r10,rsi
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       near ptr M00_L18
mov       r13,[r10+10]
cmp       r9d,[r13+8]
jae       short M00_L10
mov       ecx,r9d
mov       r12,[r13+rcx*8+10]
M00_L08
 
mov       [rbp-40],r12
mov       r12,[rbx+18]
mov       rdx,[rbp-40]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
M00_L09
 
cmp       rdi,r14
jne       short M00_L12
mov       rax,rsi
mov       r8d,[rax+8]
inc       r8d
mov       r15d,[rax+0C]
cmp       r8d,r15d
jae       short M00_L11
mov       [rax+8],r8d
jmp       short M00_L07
M00_L10
 
call      CORINFO_HELP_RNGCHKFAIL
M00_L11
 
mov       [rax+8],r15d
jmp       near ptr M00_L21
M00_L12
 
mov       rcx,rsi
mov       r11,7FF9F5C910C8
call      qword ptr [r11]
test      eax,eax
jne       near ptr M00_L19
jmp       near ptr M00_L21
M00_L13
 
mov       r10,rsi
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       short M00_L18
mov       r13,[r10+10]
cmp       r9d,[r13+8]
jae       short M00_L10
mov       ecx,r9d
mov       r12,[r13+rcx*8+10]
M00_L14
 
mov       [rbp-40],r12
mov       r12,[rbx+18]
mov       rdx,[rbp-40]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
M00_L15
 
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
jne       short M00_L16
mov       rax,rsi
mov       r8d,[rax+8]
inc       r8d
mov       r15d,[rax+0C]
cmp       r8d,r15d
jae       short M00_L17
mov       [rax+8],r8d
jmp       short M00_L13
M00_L16
 
mov       rcx,rsi
mov       r11,7FF9F5C910C8
call      qword ptr [r11]
test      eax,eax
jne       short M00_L20
jmp       short M00_L21
M00_L17
 
mov       [rax+8],r15d
jmp       short M00_L21
M00_L18
 
mov       ecx,[r10+8]
call      qword ptr [7FF9F603EFD0]
int       3
M00_L19
 
mov       rcx,rsi
mov       r11,7FF9F5C910D0
call      qword ptr [r11]
mov       r12,rax
jmp       near ptr M00_L08
M00_L20
 
mov       rcx,rsi
mov       r11,7FF9F5C910D0
call      qword ptr [r11]
mov       r12,rax
jmp       near ptr M00_L14
M00_L21
 
cmp       rdi,r14
jne       near ptr M00_L30
M00_L22
 
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M00_L23
 
call      qword ptr [7FF9F6355368]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L24
call      qword ptr [7FF9F63550B0]
mov       rbx,rax
M00_L24
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,2EF5CDB8468
mov       r8,rbx
call      qword ptr [7FF9F6066670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L25
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DD73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L05
M00_L26
 
call      qword ptr [7FF9F6355170]
mov       rdi,rax
test      rdi,rdi
jne       short M00_L27
call      qword ptr [7FF9F63550C8]
mov       rdi,rax
M00_L27
 
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,2EF5CDB9EE0
mov       r8,rdi
call      qword ptr [7FF9F5E8D470]
mov       rcx,r14
call      CORINFO_HELP_THROW
M00_L28
 
mov       ecx,14
call      qword ptr [7FF9F603ED00]
int       3
M00_L29
 
mov       rcx,7FF9F5D15120
mov       edx,20
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,2AECB001FF8
mov       rsi,[rcx]
jmp       near ptr M00_L06
M00_L30
 
mov       rcx,rsi
mov       r11,7FF9F5C910D8
call      qword ptr [r11]
jmp       near ptr M00_L22
M00_L31
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M00_L32
mov       rsi,[rbp-58]
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
je        short M00_L32
mov       rcx,rsi
mov       r11,7FF9F5C910D8
call      qword ptr [r11]
M00_L32
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.RuntimeType.IsEnumDefined(System.Object)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
vzeroupper
mov       rbx,rcx
mov       rsi,rdx
M01_L00
 
test      rsi,rsi
je        near ptr M01_L46
mov       rcx,[rbx+18]
mov       rax,rcx
test      cl,2
jne       short M01_L01
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M01_L02
M01_L01
 
xor       ecx,ecx
M01_L02
 
movzx     ecx,cl
test      ecx,ecx
je        near ptr M01_L48
mov       rcx,rsi
call      System.Object.GetType()
mov       rdi,rax
mov       rcx,[rdi+18]
mov       rax,rcx
test      cl,2
jne       short M01_L03
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M01_L04
M01_L03
 
xor       ecx,ecx
M01_L04
 
movzx     ecx,cl
test      ecx,ecx
je        short M01_L08
cmp       rbx,rdi
jne       near ptr M01_L47
M01_L05
 
mov       rcx,[rdi+18]
mov       rax,rcx
mov       rdx,rax
test      al,2
jne       short M01_L06
mov       rax,[rdx+10]
mov       rdx,offset MT_System.Enum
cmp       rax,rdx
sete      al
movzx     eax,al
jmp       short M01_L07
M01_L06
 
xor       eax,eax
M01_L07
 
movzx     eax,al
test      eax,eax
je        near ptr M01_L48
mov       rax,2AECB0000A0
mov       rbp,[rax]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M01_L63
mov       ecx,eax
mov       rcx,[rbp+rcx*8+10]
mov       rdi,rcx
M01_L08
 
mov       rcx,2EF5CDB0020
cmp       rdi,rcx
je        near ptr M01_L49
mov       rcx,rdi
call      qword ptr [7FF9F5D26070]; System.Type.IsIntegerType(System.Type)
test      eax,eax
je        near ptr M01_L51
mov       rcx,2AECB0000A0
mov       rbp,[rcx]
mov       rcx,[rbx+18]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M01_L63
mov       ecx,eax
mov       rbp,[rbp+rcx*8+10]
cmp       rbp,rdi
jne       near ptr M01_L52
test      rbp,rbp
je        near ptr M01_L22
mov       rcx,[rbp+10]
test      rcx,rcx
je        near ptr M01_L18
mov       rax,[rcx]
test      rax,rax
je        near ptr M01_L18
M01_L09
 
mov       edi,[rax+90]
test      edi,edi
je        near ptr M01_L23
M01_L10
 
add       edi,0FFFFFFFC
cmp       edi,5
jne       near ptr M01_L21
mov       rdx,offset MT_System.Int32
cmp       [rsi],rdx
je        short M01_L11
mov       rdx,rsi
mov       rcx,offset MT_System.Int32
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
M01_L11
 
mov       r14d,[rsi+8]
mov       rcx,[rbx+10]
test      rcx,rcx
je        short M01_L19
mov       rcx,[rcx]
M01_L12
 
test      rcx,rcx
je        short M01_L15
mov       rax,[rcx+78]
M01_L13
 
test      rax,rax
je        short M01_L14
mov       rcx,offset MT_System.Enum+EnumInfo`1[[System.UInt32, System.Private.CoreLib]]
cmp       [rax],rcx
je        short M01_L16
M01_L14
 
mov       rcx,rbx
xor       edx,edx
call      qword ptr [7FF9F61F7528]; System.Enum.g__InitializeEnumInfo|7_0[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, Boolean)
jmp       short M01_L16
M01_L15
 
xor       eax,eax
jmp       short M01_L13
M01_L16
 
mov       r15,[rax+8]
cmp       byte ptr [rax+19],0
je        near ptr M01_L53
mov       eax,r14d
mov       edx,[r15+8]
cmp       rdx,rax
seta      al
movzx     eax,al
M01_L17
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L18
 
mov       rcx,rbp
call      qword ptr [7FF9F5D26658]; System.RuntimeType.InitializeCache()
jmp       near ptr M01_L09
M01_L19
 
xor       ecx,ecx
jmp       short M01_L12
mov       rcx,offset MT_System.Char
cmp       [rsi],rcx
je        short M01_L20
mov       rdx,rsi
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
M01_L20
 
movzx     edx,word ptr [rsi+8]
mov       rcx,rbx
call      qword ptr [7FF9F6A3C228]
jmp       short M01_L17
M01_L21
 
cmp       edi,0A
ja        near ptr M01_L58
mov       edx,edi
lea       rcx,[7FF9F693D520]
mov       ecx,[rcx+rdx*4]
lea       rax,[M01_L00]
add       rcx,rax
jmp       rcx
M01_L22
 
xor       edi,edi
jmp       near ptr M01_L10
M01_L23
 
mov       rdi,rbp
mov       rcx,rdi
call      qword ptr [7FF9F5D26AA8]; System.RuntimeType.get_IsActualEnum()
test      eax,eax
jne       near ptr M01_L27
M01_L24
 
mov       rcx,2EF5CDB6498
cmp       rdi,rcx
je        near ptr M01_L42
mov       rcx,2EF5CDB4198
cmp       rdi,rcx
je        near ptr M01_L30
mov       rcx,2EF5CDB64C0
cmp       rdi,rcx
je        near ptr M01_L41
mov       rcx,2EF5CDB4038
cmp       rdi,rcx
je        near ptr M01_L38
mov       rcx,2EF5CDB4248
cmp       rdi,rcx
je        near ptr M01_L29
mov       rcx,2EF5CDB3F48
cmp       rdi,rcx
je        near ptr M01_L31
mov       rcx,2EF5CDB64E8
cmp       rdi,rcx
je        near ptr M01_L37
mov       rcx,2EF5CDB3D90
cmp       rdi,rcx
je        near ptr M01_L36
mov       rcx,2EF5CDB6448
cmp       rdi,rcx
je        near ptr M01_L35
mov       rcx,2EF5CDB6470
cmp       rdi,rcx
je        near ptr M01_L45
mov       rcx,2EF5CDB6510
cmp       rdi,rcx
je        near ptr M01_L40
mov       rcx,2EF5CDB6538
cmp       rdi,rcx
je        near ptr M01_L34
mov       rcx,2EF5CDB7230
cmp       rdi,rcx
je        near ptr M01_L44
mov       rcx,2EF5CDB3C08
cmp       rdi,rcx
je        near ptr M01_L43
mov       rcx,2EF5CDB0020
cmp       rdi,rcx
je        near ptr M01_L33
mov       rcx,2EF5CDC53E0
mov       r14d,1
mov       eax,2
cmp       rdi,rcx
cmove     r14d,eax
M01_L25
 
mov       edi,r14d
mov       rcx,[rbp+10]
test      rcx,rcx
je        near ptr M01_L39
mov       rax,[rcx]
test      rax,rax
je        near ptr M01_L39
M01_L26
 
mov       [rax+90],edi
jmp       near ptr M01_L10
M01_L27
 
mov       rcx,rbp
call      qword ptr [7FF9F5D1A728]; System.RuntimeType.GetEnumUnderlyingType()
mov       rdi,rax
test      rdi,rdi
jne       short M01_L32
M01_L28
 
jmp       near ptr M01_L24
M01_L29
 
mov       r14d,9
jmp       short M01_L25
M01_L30
 
mov       r14d,6
jmp       short M01_L25
M01_L31
 
mov       r14d,0A
jmp       short M01_L25
M01_L32
 
mov       rcx,offset MT_System.RuntimeType
cmp       [rdi],rcx
jne       near ptr M01_L62
jmp       short M01_L28
M01_L33
 
mov       r14d,12
jmp       short M01_L25
M01_L34
 
mov       r14d,0E
jmp       short M01_L25
M01_L35
 
mov       r14d,3
jmp       near ptr M01_L25
M01_L36
 
mov       r14d,0C
jmp       near ptr M01_L25
M01_L37
 
mov       r14d,0B
jmp       near ptr M01_L25
M01_L38
 
mov       r14d,8
jmp       near ptr M01_L25
M01_L39
 
mov       rcx,rbp
call      qword ptr [7FF9F5D26658]; System.RuntimeType.InitializeCache()
jmp       near ptr M01_L26
M01_L40
 
mov       r14d,0D
jmp       near ptr M01_L25
M01_L41
 
mov       r14d,7
jmp       near ptr M01_L25
M01_L42
 
mov       r14d,5
jmp       near ptr M01_L25
M01_L43
 
mov       r14d,10
jmp       near ptr M01_L25
M01_L44
 
mov       r14d,0F
jmp       near ptr M01_L25
M01_L45
 
mov       r14d,4
jmp       near ptr M01_L25
mov       rdx,rsi
mov       rcx,offset MT_System.SByte
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A3C210]
jmp       near ptr M01_L17
mov       rdx,rsi
mov       rcx,offset MT_System.Byte
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A3C210]
jmp       near ptr M01_L17
mov       rdx,rsi
mov       rcx,offset MT_System.Int16
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A3C1F8]
jmp       near ptr M01_L17
mov       rdx,rsi
mov       rcx,offset MT_System.UInt16
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A3C1F8]
jmp       near ptr M01_L17
M01_L46
 
mov       ecx,2E5
mov       rdx,7FF9F5C84000
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FF9F60666E8]
int       3
M01_L47
 
mov       rcx,rdi
mov       rdx,rbx
call      System.RuntimeTypeHandle.IsEquivalentTo(System.RuntimeType, System.RuntimeType)
test      eax,eax
jne       near ptr M01_L05
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F638CD98]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbx
call      qword ptr [7FF9F638C768]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F5DDF708]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L48
 
call      qword ptr [7FF9F5D27138]
int       3
M01_L49
 
mov       rcx,rbx
call      qword ptr [7FF9F5D24918]; System.Enum.GetNamesNoCopy(System.RuntimeType)
mov       r8,rsi
mov       rcx,offset MT_System.String
cmp       [r8],rcx
je        short M01_L50
mov       rdx,rsi
call      qword ptr [7FF9F5DD43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M01_L50
 
mov       rdx,rax
mov       rcx,offset MD_System.Array.IndexOf[[System.String, System.Private.CoreLib]](System.String[], System.String)
call      qword ptr [7FF9F6897D98]
not       eax
shr       eax,1F
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L51
 
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63B5170]
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F6066718]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L52
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F638CDF8]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbp
call      qword ptr [7FF9F638C768]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F5DDF708]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L53
 
test      r15,r15
jne       short M01_L54
xor       ecx,ecx
xor       r8d,r8d
jmp       short M01_L55
M01_L54
 
lea       rcx,[r15+10]
mov       r8d,[r15+8]
M01_L55
 
cmp       dword ptr [r15+8],20
jle       short M01_L56
mov       edx,r8d
mov       r8d,r14d
call      qword ptr [7FF9F6A3DF80]
jmp       short M01_L57
M01_L56
 
mov       edx,r14d
call      qword ptr [7FF9F6A3E448]; System.SpanHelpers.NonPackedIndexOfValueType[[System.Int32, System.Private.CoreLib],[System.SpanHelpers+DontNegate`1[[System.Int32, System.Private.CoreLib]], System.Private.CoreLib]](Int32 ByRef, Int32, Int32)
M01_L57
 
not       eax
shr       eax,1F
jmp       near ptr M01_L17
mov       rdx,rsi
mov       rcx,offset MT_System.UInt32
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       edx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6897DC8]; System.Enum.IsDefinedPrimitive[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, UInt32)
jmp       near ptr M01_L17
mov       rdx,rsi
mov       rcx,offset MT_System.Int64
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A37AE0]
jmp       near ptr M01_L17
mov       rdx,rsi
mov       rcx,offset MT_System.UInt64
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A37AE0]
jmp       near ptr M01_L17
mov       rdx,rsi
mov       rcx,offset MT_System.Single
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovss    xmm1,dword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A373D8]
jmp       near ptr M01_L17
mov       rdx,rsi
mov       rcx,offset MT_System.Double
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovsd    xmm1,qword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A373C0]
jmp       near ptr M01_L17
M01_L58
 
mov       rcx,2EF5CDB4010
cmp       rbp,rcx
je        short M01_L60
mov       rcx,2EF5CDB6560
cmp       rbp,rcx
je        short M01_L59
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63B5170]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F6066718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L59
 
mov       rdx,rsi
mov       rcx,offset MT_System.UIntPtr
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A36CB8]
jmp       short M01_L61
M01_L60
 
mov       rdx,rsi
mov       rcx,offset MT_System.IntPtr
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A36CB8]
M01_L61
 
movzx     eax,al
jmp       near ptr M01_L17
M01_L62
 
mov       rdx,rax
call      qword ptr [7FF9F5DD43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M01_L63
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,98
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
vmovdqa   xmmword ptr [rbp+20],xmm4
vmovdqa   xmmword ptr [rbp+30],xmm4
vmovdqa   xmmword ptr [rbp+40],xmm4
vmovdqa   xmmword ptr [rbp+50],xmm4
mov       [rbp+60],rax
mov       rax,334292FE51EA
mov       [rbp],rax
mov       rsi,rcx
mov       rbx,rdx
mov       edi,r8d
mov       r14d,r9d
test      edi,edi
jl        near ptr M02_L06
test      r14d,0FFFFFFFC
jne       near ptr M02_L07
M02_L00
 
cmp       edi,1
jle       near ptr M02_L08
mov       r15d,[rsi+8]
test      r15d,r15d
je        near ptr M02_L08
cmp       dword ptr [rbx+8],0
je        near ptr M02_L10
M02_L01
 
test      [rsp],esp
sub       rsp,200
lea       rcx,[rsp+30]
mov       [rbp+58],rcx
mov       dword ptr [rbp+60],80
xor       ecx,ecx
mov       [rbp+48],rcx
mov       [rbp+50],ecx
lea       rcx,[rsi+0C]
mov       [rbp+38],rcx
mov       [rbp+40],r15d
vmovdqu   xmm0,xmmword ptr [rbx]
vmovdqu   xmmword ptr [rbp+28],xmm0
lea       rcx,[rbp+38]
lea       rdx,[rbp+28]
lea       r8,[rbp+48]
call      qword ptr [7FF9F5DD71B0]; System.String.MakeSeparatorListAny(System.ReadOnlySpan`1, System.ReadOnlySpan`1, System.Collections.Generic.ValueListBuilder`1 ByRef)
mov       eax,[rbp+50]
cmp       eax,[rbp+60]
ja        near ptr M02_L11
mov       r10,[rbp+58]
test      eax,eax
je        near ptr M02_L12
test      r14d,r14d
je        near ptr M02_L05
xor       ecx,ecx
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],rcx
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       [rsp+28],r14d
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DD7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       rbx,rax
M02_L02
 
mov       rdx,[rbp+48]
test      rdx,rdx
je        short M02_L03
xor       ecx,ecx
mov       [rbp+48],rcx
mov       rcx,2AECB001F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65D5240]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M02_L03
 
mov       rax,rbx
mov       rcx,334292FE51EA
cmp       [rbp],rcx
je        short M02_L04
call      CORINFO_HELP_FAIL_FAST
M02_L04
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M02_L05
 
xor       r14d,r14d
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],r14
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DD7180]
mov       rbx,rax
jmp       short M02_L02
M02_L06
 
mov       ecx,1C7
mov       rdx,7FF9F5C84000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,edi
call      qword ptr [7FF9F689ECD0]
int       3
M02_L07
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F603ECB8]
int       3
M02_L08
 
mov       rcx,rsi
mov       edx,r14d
mov       r8d,edi
call      qword ptr [7FF9F5DD7150]; System.String.CreateSplitArrayOfThisAsSoleValue(System.StringSplitOptions, Int32)
mov       rcx,334292FE51EA
cmp       [rbp],rcx
je        short M02_L09
call      CORINFO_HELP_FAIL_FAST
M02_L09
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M02_L10
 
cmp       r15d,edi
jge       near ptr M02_L01
and       r14d,0FFFFFFFD
jmp       near ptr M02_L01
M02_L11
 
call      qword ptr [7FF9F603E9D0]
int       3
M02_L12
 
mov       edi,1
jmp       near ptr M02_L00
 
System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,edx
mov       edi,[rbx+8]
lea       ebp,[rdi-1]
mov       r14d,ebp
xor       r15d,r15d
test      sil,1
je        short M03_L03
xor       r15d,r15d
test      edi,edi
jle       short M03_L03
M03_L00
 
mov       ecx,r15d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M03_L01
mov       rax,[7FFA534C0728]
test      byte ptr [rax+rcx],80
je        short M03_L03
jmp       short M03_L02
M03_L01
 
call      qword ptr [7FFA534A7338]
test      eax,eax
je        short M03_L03
M03_L02
 
inc       r15d
cmp       edi,r15d
jg        short M03_L00
M03_L03
 
test      sil,2
je        near ptr M03_L10
mov       r14d,ebp
cmp       r14d,r15d
jl        short M03_L10
mov       ecx,r14d
or        ecx,r15d
jl        short M03_L07
cmp       edi,r14d
jle       short M03_L07
M03_L04
 
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M03_L05
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M03_L10
jmp       short M03_L06
M03_L05
 
call      qword ptr [7FFA534A7338]
test      eax,eax
je        short M03_L10
M03_L06
 
dec       r14d
cmp       r14d,r15d
jge       short M03_L04
jmp       short M03_L10
M03_L07
 
cmp       r14d,edi
jae       short M03_L14
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M03_L08
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M03_L10
jmp       short M03_L09
M03_L08
 
call      qword ptr [7FFA534A7338]
test      eax,eax
je        short M03_L10
M03_L09
 
dec       r14d
cmp       r14d,r15d
jge       short M03_L07
M03_L10
 
mov       r8d,r14d
sub       r8d,r15d
inc       r8d
cmp       edi,r8d
jne       short M03_L12
mov       rax,rbx
M03_L11
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L12
 
test      r8d,r8d
je        short M03_L13
mov       rcx,rbx
mov       edx,r15d
call      qword ptr [7FFA534A34A0]; Precode of System.String.InternalSubString(Int32, Int32)
jmp       short M03_L11
M03_L13
 
mov       rax,[7FFA534C08A0]
mov       rax,[rax]
jmp       short M03_L11
M03_L14
 
call      qword ptr [7FFA53493D20]; CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.SplitWithRemoveEmptyEntries()
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,48
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
xor       eax,eax
mov       [rbp-40],rax
mov       [rbp-60],rsp
mov       rbx,rcx
mov       rsi,[rbx+298]
test      rsi,rsi
je        short M00_L00
xor       ecx,ecx
cmp       dword ptr [rsi+8],0
sete      cl
test      ecx,ecx
sete      cl
movzx     ecx,cl
cmp       dword ptr [rsi+8],0
jne       short M00_L01
jmp       short M00_L01
M00_L00
 
xor       ecx,ecx
M00_L01
 
test      ecx,ecx
je        near ptr M00_L23
cmp       dword ptr [rsi+8],0
je        short M00_L05
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       short M00_L02
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L25
jmp       short M00_L03
M00_L02
 
call      qword ptr [7FF9F673E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L25
M00_L03
 
mov       ecx,[rsi+8]
dec       ecx
cmp       ecx,[rsi+8]
jae       near ptr M00_L31
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L04
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L25
jmp       short M00_L05
M00_L04
 
call      qword ptr [7FF9F673E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L25
M00_L05
 
mov       rcx,offset MT_System.StringSplitOptions
call      CORINFO_HELP_NEWSFAST
mov       dword ptr [rax+8],1
mov       rdx,rax
mov       rcx,2116E3777D8
cmp       [rcx],ecx
call      qword ptr [7FF9F5D2A770]; System.RuntimeType.IsEnumDefined(System.Object)
test      eax,eax
je        near ptr M00_L26
mov       rcx,offset MT_System.Char[]
mov       edx,1
call      CORINFO_HELP_NEWARR_1_VC
mov       word ptr [rax+10],2E
cmp       [rsi],sil
add       rax,10
mov       rcx,rsi
mov       [rbp-50],rax
mov       dword ptr [rbp-48],1
lea       rdx,[rbp-50]
mov       r9d,1
mov       r8d,7FFFFFFF
call      qword ptr [7FF9F5DE70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
mov       rsi,rax
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyCollection`1[[System.String, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
test      rsi,rsi
je        near ptr M00_L28
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+8]
mov       r11,7FF9F5CA10E0
call      qword ptr [r11]
test      eax,eax
je        near ptr M00_L29
mov       rcx,[rdi+8]
mov       r11,7FF9F5CA10E8
call      qword ptr [r11]
mov       rsi,rax
M00_L06
 
mov       [rbp-58],rsi
test      rsi,rsi
je        near ptr M00_L15
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
jne       near ptr M00_L15
jmp       short M00_L09
M00_L07
 
mov       r10,rsi
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       near ptr M00_L18
mov       r13,[r10+10]
cmp       r9d,[r13+8]
jae       short M00_L10
mov       ecx,r9d
mov       r12,[r13+rcx*8+10]
M00_L08
 
mov       [rbp-40],r12
mov       r12,[rbx+18]
mov       rdx,[rbp-40]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
M00_L09
 
cmp       rdi,r14
jne       short M00_L12
mov       rax,rsi
mov       r8d,[rax+8]
inc       r8d
mov       r15d,[rax+0C]
cmp       r8d,r15d
jae       short M00_L11
mov       [rax+8],r8d
jmp       short M00_L07
M00_L10
 
call      CORINFO_HELP_RNGCHKFAIL
M00_L11
 
mov       [rax+8],r15d
jmp       near ptr M00_L21
M00_L12
 
mov       rcx,rsi
mov       r11,7FF9F5CA10C8
call      qword ptr [r11]
test      eax,eax
jne       near ptr M00_L19
jmp       near ptr M00_L21
M00_L13
 
mov       r10,rsi
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       short M00_L18
mov       r13,[r10+10]
cmp       r9d,[r13+8]
jae       short M00_L10
mov       ecx,r9d
mov       r12,[r13+rcx*8+10]
M00_L14
 
mov       [rbp-40],r12
mov       r12,[rbx+18]
mov       rdx,[rbp-40]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
M00_L15
 
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
jne       short M00_L16
mov       rax,rsi
mov       r8d,[rax+8]
inc       r8d
mov       r15d,[rax+0C]
cmp       r8d,r15d
jae       short M00_L17
mov       [rax+8],r8d
jmp       short M00_L13
M00_L16
 
mov       rcx,rsi
mov       r11,7FF9F5CA10C8
call      qword ptr [r11]
test      eax,eax
jne       short M00_L20
jmp       short M00_L21
M00_L17
 
mov       [rax+8],r15d
jmp       short M00_L21
M00_L18
 
mov       ecx,[r10+8]
call      qword ptr [7FF9F604EFD0]
int       3
M00_L19
 
mov       rcx,rsi
mov       r11,7FF9F5CA10D0
call      qword ptr [r11]
mov       r12,rax
jmp       near ptr M00_L08
M00_L20
 
mov       rcx,rsi
mov       r11,7FF9F5CA10D0
call      qword ptr [r11]
mov       r12,rax
jmp       near ptr M00_L14
M00_L21
 
cmp       rdi,r14
jne       near ptr M00_L30
M00_L22
 
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M00_L23
 
call      qword ptr [7FF9F6365368]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L24
call      qword ptr [7FF9F63650B0]
mov       rbx,rax
M00_L24
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,2116E368468
mov       r8,rbx
call      qword ptr [7FF9F6076670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L25
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DE73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L05
M00_L26
 
call      qword ptr [7FF9F6365170]
mov       rdi,rax
test      rdi,rdi
jne       short M00_L27
call      qword ptr [7FF9F63650C8]
mov       rdi,rax
M00_L27
 
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,2116E369EE0
mov       r8,rdi
call      qword ptr [7FF9F5E9D470]
mov       rcx,r14
call      CORINFO_HELP_THROW
M00_L28
 
mov       ecx,14
call      qword ptr [7FF9F604ED00]
int       3
M00_L29
 
mov       rcx,7FF9F5D25120
mov       edx,20
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,1D0E0402000
mov       rsi,[rcx]
jmp       near ptr M00_L06
M00_L30
 
mov       rcx,rsi
mov       r11,7FF9F5CA10D8
call      qword ptr [r11]
jmp       near ptr M00_L22
M00_L31
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M00_L32
mov       rsi,[rbp-58]
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
je        short M00_L32
mov       rcx,rsi
mov       r11,7FF9F5CA10D8
call      qword ptr [r11]
M00_L32
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
sub       rsp,28
movzx     ecx,cx
call      qword ptr [7FFA534A7370]; Precode of System.Globalization.CharUnicodeInfo.GetCategoryCasingTableOffsetNoBoundsChecks(UInt32)
mov       rcx,[7FFA534C0750]
cmp       byte ptr [rcx+rax],0
setl      al
movzx     eax,al
add       rsp,28
ret
 
System.RuntimeType.IsEnumDefined(System.Object)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
vzeroupper
mov       rbx,rcx
mov       rsi,rdx
M02_L00
 
test      rsi,rsi
je        near ptr M02_L24
mov       rcx,[rbx+18]
mov       rax,rcx
test      cl,2
jne       short M02_L01
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M02_L02
M02_L01
 
xor       ecx,ecx
M02_L02
 
movzx     ecx,cl
test      ecx,ecx
je        near ptr M02_L26
mov       rcx,rsi
call      System.Object.GetType()
mov       rdi,rax
mov       rcx,[rdi+18]
mov       rax,rcx
test      cl,2
jne       short M02_L03
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M02_L04
M02_L03
 
xor       ecx,ecx
M02_L04
 
movzx     ecx,cl
test      ecx,ecx
je        short M02_L08
cmp       rbx,rdi
jne       near ptr M02_L25
M02_L05
 
mov       rcx,[rdi+18]
mov       rax,rcx
mov       rdx,rax
test      al,2
jne       short M02_L06
mov       rax,[rdx+10]
mov       rdx,offset MT_System.Enum
cmp       rax,rdx
sete      al
movzx     eax,al
jmp       short M02_L07
M02_L06
 
xor       eax,eax
M02_L07
 
movzx     eax,al
test      eax,eax
je        near ptr M02_L26
mov       rax,1D0E04000A0
mov       rbp,[rax]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M02_L60
mov       ecx,eax
mov       rcx,[rbp+rcx*8+10]
mov       rdi,rcx
M02_L08
 
mov       rcx,2116E360020
cmp       rdi,rcx
je        near ptr M02_L27
mov       rcx,rdi
call      qword ptr [7FF9F5D36070]; System.Type.IsIntegerType(System.Type)
test      eax,eax
je        near ptr M02_L29
mov       rcx,1D0E04000A0
mov       rbp,[rcx]
mov       rcx,[rbx+18]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M02_L60
mov       ecx,eax
mov       rbp,[rbp+rcx*8+10]
cmp       rbp,rdi
jne       near ptr M02_L30
test      rbp,rbp
je        near ptr M02_L23
mov       rcx,[rbp+10]
test      rcx,rcx
je        near ptr M02_L19
mov       rax,[rcx]
test      rax,rax
je        near ptr M02_L19
M02_L09
 
mov       edi,[rax+90]
test      edi,edi
je        near ptr M02_L40
M02_L10
 
add       edi,0FFFFFFFC
cmp       edi,5
jne       near ptr M02_L22
mov       rdx,offset MT_System.Int32
cmp       [rsi],rdx
je        short M02_L11
mov       rdx,rsi
mov       rcx,offset MT_System.Int32
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
M02_L11
 
mov       r14d,[rsi+8]
mov       rcx,[rbx+10]
test      rcx,rcx
je        short M02_L20
mov       rcx,[rcx]
M02_L12
 
test      rcx,rcx
je        short M02_L15
mov       rax,[rcx+78]
M02_L13
 
test      rax,rax
je        short M02_L14
mov       rcx,offset MT_System.Enum+EnumInfo`1[[System.UInt32, System.Private.CoreLib]]
cmp       [rax],rcx
je        short M02_L17
M02_L14
 
mov       rcx,rbx
xor       edx,edx
call      qword ptr [7FF9F6207528]; System.Enum.g__InitializeEnumInfo|7_0[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, Boolean)
jmp       short M02_L17
M02_L15
 
xor       eax,eax
jmp       short M02_L13
M02_L16
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L17
 
mov       r15,[rax+8]
cmp       byte ptr [rax+19],0
je        near ptr M02_L31
mov       eax,r14d
mov       edx,[r15+8]
cmp       rdx,rax
seta      al
movzx     eax,al
M02_L18
 
jmp       short M02_L16
M02_L19
 
mov       rcx,rbp
call      qword ptr [7FF9F5D36658]; System.RuntimeType.InitializeCache()
jmp       near ptr M02_L09
M02_L20
 
xor       ecx,ecx
jmp       short M02_L12
mov       rcx,offset MT_System.Char
cmp       [rsi],rcx
je        short M02_L21
mov       rdx,rsi
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
M02_L21
 
movzx     edx,word ptr [rsi+8]
mov       rcx,rbx
call      qword ptr [7FF9F6A4C660]
jmp       short M02_L16
M02_L22
 
cmp       edi,0A
ja        near ptr M02_L36
mov       edx,edi
lea       rcx,[7FF9F693DFF0]
mov       ecx,[rcx+rdx*4]
lea       rax,[M02_L00]
add       rcx,rax
jmp       rcx
M02_L23
 
xor       edi,edi
jmp       near ptr M02_L10
mov       rdx,rsi
mov       rcx,offset MT_System.SByte
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A4C648]
jmp       near ptr M02_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Byte
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A4C648]
jmp       near ptr M02_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Int16
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A4C630]
jmp       near ptr M02_L16
mov       rdx,rsi
mov       rcx,offset MT_System.UInt16
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A4C630]
jmp       near ptr M02_L16
M02_L24
 
mov       ecx,2E5
mov       rdx,7FF9F5C94000
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FF9F60766E8]
int       3
M02_L25
 
mov       rcx,rdi
mov       rdx,rbx
call      System.RuntimeTypeHandle.IsEquivalentTo(System.RuntimeType, System.RuntimeType)
test      eax,eax
jne       near ptr M02_L05
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F639CD98]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbx
call      qword ptr [7FF9F639C768]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F5DEF708]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L26
 
call      qword ptr [7FF9F5D37138]
int       3
M02_L27
 
mov       rcx,rbx
call      qword ptr [7FF9F5D34918]; System.Enum.GetNamesNoCopy(System.RuntimeType)
mov       r8,rsi
mov       rcx,offset MT_System.String
cmp       [r8],rcx
je        short M02_L28
mov       rdx,rsi
call      qword ptr [7FF9F5DE43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M02_L28
 
mov       rdx,rax
mov       rcx,offset MD_System.Array.IndexOf[[System.String, System.Private.CoreLib]](System.String[], System.String)
call      qword ptr [7FF9F68A7AF8]
not       eax
shr       eax,1F
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L29
 
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63C5170]
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F6076718]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M02_L30
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F639CDF8]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbp
call      qword ptr [7FF9F639C768]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F5DEF708]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L31
 
test      r15,r15
jne       short M02_L32
xor       ecx,ecx
xor       r8d,r8d
jmp       short M02_L33
M02_L32
 
lea       rcx,[r15+10]
mov       r8d,[r15+8]
M02_L33
 
cmp       dword ptr [r15+8],20
jle       short M02_L34
mov       edx,r8d
mov       r8d,r14d
call      qword ptr [7FF9F6A4E3B8]
jmp       short M02_L35
M02_L34
 
mov       edx,r14d
call      qword ptr [7FF9F6A4E880]; System.SpanHelpers.NonPackedIndexOfValueType[[System.Int32, System.Private.CoreLib],[System.SpanHelpers+DontNegate`1[[System.Int32, System.Private.CoreLib]], System.Private.CoreLib]](Int32 ByRef, Int32, Int32)
M02_L35
 
not       eax
shr       eax,1F
jmp       near ptr M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.UInt32
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       edx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F68A7B28]; System.Enum.IsDefinedPrimitive[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, UInt32)
jmp       near ptr M02_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Int64
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A47B28]
jmp       near ptr M02_L16
mov       rdx,rsi
mov       rcx,offset MT_System.UInt64
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A47B28]
jmp       near ptr M02_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Single
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovss    xmm1,dword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A47420]
jmp       near ptr M02_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Double
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovsd    xmm1,qword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A47408]
jmp       near ptr M02_L16
M02_L36
 
mov       rcx,2116E364010
cmp       rbp,rcx
je        short M02_L38
mov       rcx,2116E366560
cmp       rbp,rcx
je        short M02_L37
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63C5170]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F6076718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L37
 
mov       rdx,rsi
mov       rcx,offset MT_System.UIntPtr
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A46D00]
jmp       short M02_L39
M02_L38
 
mov       rdx,rsi
mov       rcx,offset MT_System.IntPtr
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A46D00]
M02_L39
 
movzx     eax,al
jmp       near ptr M02_L16
M02_L40
 
mov       r15,rbp
mov       rcx,r15
call      qword ptr [7FF9F5D36AA8]; System.RuntimeType.get_IsActualEnum()
test      eax,eax
je        short M02_L41
mov       rcx,rbp
call      qword ptr [7FF9F5D2A728]; System.RuntimeType.GetEnumUnderlyingType()
mov       r15,rax
test      r15,r15
je        short M02_L41
mov       rcx,offset MT_System.RuntimeType
cmp       [r15],rcx
je        short M02_L41
mov       rdx,rax
call      qword ptr [7FF9F5DE43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M02_L41
 
mov       rcx,2116E366498
cmp       r15,rcx
jne       short M02_L42
mov       edi,5
jmp       near ptr M02_L57
M02_L42
 
mov       rcx,2116E364198
cmp       r15,rcx
jne       short M02_L43
mov       edi,6
jmp       near ptr M02_L57
M02_L43
 
mov       rcx,2116E3664C0
cmp       r15,rcx
jne       short M02_L44
mov       edi,7
jmp       near ptr M02_L57
M02_L44
 
mov       rcx,2116E364038
cmp       r15,rcx
jne       short M02_L45
mov       edi,8
jmp       near ptr M02_L57
M02_L45
 
mov       rcx,2116E364248
cmp       r15,rcx
jne       short M02_L46
mov       edi,9
jmp       near ptr M02_L57
M02_L46
 
mov       rcx,2116E363F48
cmp       r15,rcx
jne       short M02_L47
mov       edi,0A
jmp       near ptr M02_L57
M02_L47
 
mov       rcx,2116E3664E8
cmp       r15,rcx
jne       short M02_L48
mov       edi,0B
jmp       near ptr M02_L57
M02_L48
 
mov       rcx,2116E363D90
cmp       r15,rcx
jne       short M02_L49
mov       edi,0C
jmp       near ptr M02_L57
M02_L49
 
mov       rcx,2116E366448
cmp       r15,rcx
jne       short M02_L50
mov       edi,3
jmp       near ptr M02_L57
M02_L50
 
mov       rcx,2116E366470
cmp       r15,rcx
jne       short M02_L51
mov       edi,4
jmp       near ptr M02_L57
M02_L51
 
mov       rcx,2116E366510
cmp       r15,rcx
jne       short M02_L52
mov       edi,0D
jmp       short M02_L57
M02_L52
 
mov       rcx,2116E366538
cmp       r15,rcx
jne       short M02_L53
mov       edi,0E
jmp       short M02_L57
M02_L53
 
mov       rcx,2116E3671E0
cmp       r15,rcx
jne       short M02_L54
mov       edi,0F
jmp       short M02_L57
M02_L54
 
mov       rcx,2116E363C08
cmp       r15,rcx
jne       short M02_L55
mov       edi,10
jmp       short M02_L57
M02_L55
 
mov       rcx,2116E360020
cmp       r15,rcx
jne       short M02_L56
mov       edi,12
jmp       short M02_L57
M02_L56
 
mov       rcx,2116E3753E0
mov       edi,1
mov       eax,2
cmp       r15,rcx
cmove     edi,eax
M02_L57
 
cmp       qword ptr [rbp+10],0
je        short M02_L58
mov       rcx,[rbp+10]
mov       rax,[rcx]
test      rax,rax
je        short M02_L58
jmp       short M02_L59
M02_L58
 
mov       rcx,rbp
call      qword ptr [7FF9F5D36658]; System.RuntimeType.InitializeCache()
M02_L59
 
mov       [rax+90],edi
jmp       near ptr M02_L10
M02_L60
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,98
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
vmovdqa   xmmword ptr [rbp+20],xmm4
vmovdqa   xmmword ptr [rbp+30],xmm4
vmovdqa   xmmword ptr [rbp+40],xmm4
vmovdqa   xmmword ptr [rbp+50],xmm4
mov       [rbp+60],rax
mov       rax,689FC02F7CF7
mov       [rbp],rax
mov       rsi,rcx
mov       rbx,rdx
mov       edi,r8d
mov       r14d,r9d
test      edi,edi
jl        near ptr M03_L06
test      r14d,0FFFFFFFC
jne       near ptr M03_L07
M03_L00
 
cmp       edi,1
jle       near ptr M03_L08
mov       r15d,[rsi+8]
test      r15d,r15d
je        near ptr M03_L08
cmp       dword ptr [rbx+8],0
je        near ptr M03_L10
M03_L01
 
test      [rsp],esp
sub       rsp,200
lea       rcx,[rsp+30]
mov       [rbp+58],rcx
mov       dword ptr [rbp+60],80
xor       ecx,ecx
mov       [rbp+48],rcx
mov       [rbp+50],ecx
lea       rcx,[rsi+0C]
mov       [rbp+38],rcx
mov       [rbp+40],r15d
vmovdqu   xmm0,xmmword ptr [rbx]
vmovdqu   xmmword ptr [rbp+28],xmm0
lea       rcx,[rbp+38]
lea       rdx,[rbp+28]
lea       r8,[rbp+48]
call      qword ptr [7FF9F5DE71B0]; System.String.MakeSeparatorListAny(System.ReadOnlySpan`1, System.ReadOnlySpan`1, System.Collections.Generic.ValueListBuilder`1 ByRef)
mov       eax,[rbp+50]
cmp       eax,[rbp+60]
ja        near ptr M03_L11
mov       r10,[rbp+58]
test      eax,eax
je        near ptr M03_L12
test      r14d,r14d
je        near ptr M03_L05
xor       ecx,ecx
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],rcx
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       [rsp+28],r14d
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DE7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       rbx,rax
M03_L02
 
mov       rdx,[rbp+48]
test      rdx,rdx
je        short M03_L03
xor       ecx,ecx
mov       [rbp+48],rcx
mov       rcx,1D0E0401F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65E5250]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M03_L03
 
mov       rax,rbx
mov       rcx,689FC02F7CF7
cmp       [rbp],rcx
je        short M03_L04
call      CORINFO_HELP_FAIL_FAST
M03_L04
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L05
 
xor       r14d,r14d
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],r14
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DE7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       rbx,rax
jmp       short M03_L02
M03_L06
 
mov       ecx,1C7
mov       rdx,7FF9F5C94000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,edi
call      qword ptr [7FF9F68AF000]
int       3
M03_L07
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F604ECB8]
int       3
M03_L08
 
mov       rcx,rsi
mov       edx,r14d
mov       r8d,edi
call      qword ptr [7FF9F5DE7150]; System.String.CreateSplitArrayOfThisAsSoleValue(System.StringSplitOptions, Int32)
mov       rcx,689FC02F7CF7
cmp       [rbp],rcx
je        short M03_L09
call      CORINFO_HELP_FAIL_FAST
M03_L09
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L10
 
cmp       r15d,edi
jge       near ptr M03_L01
and       r14d,0FFFFFFFD
jmp       near ptr M03_L01
M03_L11
 
call      qword ptr [7FF9F604E9D0]
int       3
M03_L12
 
mov       edi,1
jmp       near ptr M03_L00
 
System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,edx
mov       edi,[rbx+8]
lea       ebp,[rdi-1]
mov       r14d,ebp
xor       r15d,r15d
test      sil,1
je        short M04_L03
xor       r15d,r15d
test      edi,edi
jle       short M04_L03
M04_L00
 
mov       ecx,r15d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L01
mov       rax,[7FFA534C0728]
test      byte ptr [rax+rcx],80
je        short M04_L03
jmp       short M04_L02
M04_L01
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L03
M04_L02
 
inc       r15d
cmp       edi,r15d
jg        short M04_L00
M04_L03
 
test      sil,2
je        near ptr M04_L10
mov       r14d,ebp
cmp       r14d,r15d
jl        short M04_L10
mov       ecx,r14d
or        ecx,r15d
jl        short M04_L07
cmp       edi,r14d
jle       short M04_L07
M04_L04
 
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L05
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L06
M04_L05
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L06
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L04
jmp       short M04_L10
M04_L07
 
cmp       r14d,edi
jae       short M04_L14
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L08
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L09
M04_L08
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L09
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L07
M04_L10
 
mov       r8d,r14d
sub       r8d,r15d
inc       r8d
cmp       edi,r8d
jne       short M04_L12
mov       rax,rbx
M04_L11
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L12
 
test      r8d,r8d
je        short M04_L13
mov       rcx,rbx
mov       edx,r15d
call      qword ptr [7FFA534A34A0]; Precode of System.String.InternalSubString(Int32, Int32)
jmp       short M04_L11
M04_L13
 
mov       rax,[7FFA534C08A0]
mov       rax,[rax]
jmp       short M04_L11
M04_L14
 
call      qword ptr [7FFA53493D20]; CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.SplitWithRemoveEmptyEntries()
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,48
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
xor       eax,eax
mov       [rbp-40],rax
mov       [rbp-60],rsp
mov       rbx,rcx
mov       rsi,[rbx+298]
test      rsi,rsi
je        short M00_L00
xor       ecx,ecx
cmp       dword ptr [rsi+8],0
sete      cl
test      ecx,ecx
sete      cl
movzx     ecx,cl
cmp       dword ptr [rsi+8],0
jne       short M00_L01
jmp       short M00_L01
M00_L00
 
xor       ecx,ecx
M00_L01
 
test      ecx,ecx
je        near ptr M00_L23
cmp       dword ptr [rsi+8],0
je        short M00_L05
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       short M00_L02
mov       ecx,ecx
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L25
jmp       short M00_L03
M00_L02
 
call      qword ptr [7FF9F671E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L25
M00_L03
 
mov       ecx,[rsi+8]
dec       ecx
cmp       ecx,[rsi+8]
jae       near ptr M00_L31
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L04
mov       ecx,ecx
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L25
jmp       short M00_L05
M00_L04
 
call      qword ptr [7FF9F671E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L25
M00_L05
 
mov       rcx,offset MT_System.StringSplitOptions
call      CORINFO_HELP_NEWSFAST
mov       dword ptr [rax+8],1
mov       rdx,rax
mov       rcx,277152B77D8
cmp       [rcx],ecx
call      qword ptr [7FF9F5D0A770]; System.RuntimeType.IsEnumDefined(System.Object)
test      eax,eax
je        near ptr M00_L26
mov       rcx,offset MT_System.Char[]
mov       edx,1
call      CORINFO_HELP_NEWARR_1_VC
mov       word ptr [rax+10],2E
cmp       [rsi],sil
add       rax,10
mov       rcx,rsi
mov       [rbp-50],rax
mov       dword ptr [rbp-48],1
lea       rdx,[rbp-50]
mov       r9d,1
mov       r8d,7FFFFFFF
call      qword ptr [7FF9F5DC70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
mov       rsi,rax
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyCollection`1[[System.String, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
test      rsi,rsi
je        near ptr M00_L28
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+8]
mov       r11,7FF9F5C810E0
call      qword ptr [r11]
test      eax,eax
je        near ptr M00_L29
mov       rcx,[rdi+8]
mov       r11,7FF9F5C810E8
call      qword ptr [r11]
mov       rsi,rax
M00_L06
 
mov       [rbp-58],rsi
test      rsi,rsi
je        near ptr M00_L15
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
jne       near ptr M00_L15
jmp       short M00_L09
M00_L07
 
mov       r10,rsi
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       near ptr M00_L18
mov       r13,[r10+10]
cmp       r9d,[r13+8]
jae       short M00_L10
mov       ecx,r9d
mov       r12,[r13+rcx*8+10]
M00_L08
 
mov       [rbp-40],r12
mov       r12,[rbx+18]
mov       rdx,[rbp-40]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
M00_L09
 
cmp       rdi,r14
jne       short M00_L12
mov       rax,rsi
mov       r8d,[rax+8]
inc       r8d
mov       r15d,[rax+0C]
cmp       r8d,r15d
jae       short M00_L11
mov       [rax+8],r8d
jmp       short M00_L07
M00_L10
 
call      CORINFO_HELP_RNGCHKFAIL
M00_L11
 
mov       [rax+8],r15d
jmp       near ptr M00_L21
M00_L12
 
mov       rcx,rsi
mov       r11,7FF9F5C810C8
call      qword ptr [r11]
test      eax,eax
jne       near ptr M00_L19
jmp       near ptr M00_L21
M00_L13
 
mov       r10,rsi
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       short M00_L18
mov       r13,[r10+10]
cmp       r9d,[r13+8]
jae       short M00_L10
mov       ecx,r9d
mov       r12,[r13+rcx*8+10]
M00_L14
 
mov       [rbp-40],r12
mov       r12,[rbx+18]
mov       rdx,[rbp-40]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
M00_L15
 
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
jne       short M00_L16
mov       rax,rsi
mov       r8d,[rax+8]
inc       r8d
mov       r15d,[rax+0C]
cmp       r8d,r15d
jae       short M00_L17
mov       [rax+8],r8d
jmp       short M00_L13
M00_L16
 
mov       rcx,rsi
mov       r11,7FF9F5C810C8
call      qword ptr [r11]
test      eax,eax
jne       short M00_L20
jmp       short M00_L21
M00_L17
 
mov       [rax+8],r15d
jmp       short M00_L21
M00_L18
 
mov       ecx,[r10+8]
call      qword ptr [7FF9F602EFD0]
int       3
M00_L19
 
mov       rcx,rsi
mov       r11,7FF9F5C810D0
call      qword ptr [r11]
mov       r12,rax
jmp       near ptr M00_L08
M00_L20
 
mov       rcx,rsi
mov       r11,7FF9F5C810D0
call      qword ptr [r11]
mov       r12,rax
jmp       near ptr M00_L14
M00_L21
 
cmp       rdi,r14
jne       near ptr M00_L30
M00_L22
 
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M00_L23
 
call      qword ptr [7FF9F6345368]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L24
call      qword ptr [7FF9F63450B0]
mov       rbx,rax
M00_L24
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,277152A8468
mov       r8,rbx
call      qword ptr [7FF9F6056670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L25
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DC73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L05
M00_L26
 
call      qword ptr [7FF9F6345170]
mov       rdi,rax
test      rdi,rdi
jne       short M00_L27
call      qword ptr [7FF9F63450C8]
mov       rdi,rax
M00_L27
 
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,277152A9EE0
mov       r8,rdi
call      qword ptr [7FF9F5E7D470]
mov       rcx,r14
call      CORINFO_HELP_THROW
M00_L28
 
mov       ecx,14
call      qword ptr [7FF9F602ED00]
int       3
M00_L29
 
mov       rcx,7FF9F5D05120
mov       edx,20
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,23687402000
mov       rsi,[rcx]
jmp       near ptr M00_L06
M00_L30
 
mov       rcx,rsi
mov       r11,7FF9F5C810D8
call      qword ptr [r11]
jmp       near ptr M00_L22
M00_L31
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M00_L32
mov       rsi,[rbp-58]
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
je        short M00_L32
mov       rcx,rsi
mov       r11,7FF9F5C810D8
call      qword ptr [r11]
M00_L32
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
sub       rsp,28
movzx     ecx,cx
call      qword ptr [7FFA534A7370]; Precode of System.Globalization.CharUnicodeInfo.GetCategoryCasingTableOffsetNoBoundsChecks(UInt32)
mov       rcx,[7FFA534C0750]
cmp       byte ptr [rcx+rax],0
setl      al
movzx     eax,al
add       rsp,28
ret
 
System.RuntimeType.IsEnumDefined(System.Object)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
vzeroupper
mov       rbx,rcx
mov       rsi,rdx
M02_L00
 
test      rsi,rsi
je        near ptr M02_L25
mov       rcx,[rbx+18]
mov       rax,rcx
test      cl,2
jne       short M02_L01
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M02_L02
M02_L01
 
xor       ecx,ecx
M02_L02
 
movzx     ecx,cl
test      ecx,ecx
je        near ptr M02_L27
mov       rcx,rsi
call      System.Object.GetType()
mov       rdi,rax
mov       rcx,[rdi+18]
mov       rax,rcx
test      cl,2
jne       short M02_L03
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M02_L04
M02_L03
 
xor       ecx,ecx
M02_L04
 
movzx     ecx,cl
test      ecx,ecx
je        short M02_L08
cmp       rbx,rdi
jne       near ptr M02_L26
M02_L05
 
mov       rcx,[rdi+18]
mov       rax,rcx
mov       rdx,rax
test      al,2
jne       short M02_L06
mov       rax,[rdx+10]
mov       rdx,offset MT_System.Enum
cmp       rax,rdx
sete      al
movzx     eax,al
jmp       short M02_L07
M02_L06
 
xor       eax,eax
M02_L07
 
movzx     eax,al
test      eax,eax
je        near ptr M02_L27
mov       rax,236874000A0
mov       rbp,[rax]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M02_L61
mov       ecx,eax
mov       rcx,[rbp+rcx*8+10]
mov       rdi,rcx
M02_L08
 
mov       rcx,277152A0020
cmp       rdi,rcx
je        near ptr M02_L28
mov       rcx,rdi
call      qword ptr [7FF9F5D16070]; System.Type.IsIntegerType(System.Type)
test      eax,eax
je        near ptr M02_L30
mov       rcx,236874000A0
mov       rbp,[rcx]
mov       rcx,[rbx+18]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M02_L61
mov       ecx,eax
mov       rbp,[rbp+rcx*8+10]
cmp       rbp,rdi
jne       near ptr M02_L31
test      rbp,rbp
je        near ptr M02_L24
mov       rcx,[rbp+10]
test      rcx,rcx
je        near ptr M02_L23
mov       rax,[rcx]
test      rax,rax
je        near ptr M02_L23
M02_L09
 
mov       edi,[rax+90]
test      edi,edi
je        near ptr M02_L41
M02_L10
 
add       edi,0FFFFFFFC
cmp       edi,5
jne       near ptr M02_L22
mov       rdx,offset MT_System.Int32
cmp       [rsi],rdx
je        short M02_L11
mov       rdx,rsi
mov       rcx,offset MT_System.Int32
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
M02_L11
 
mov       r14d,[rsi+8]
mov       rcx,[rbx+10]
test      rcx,rcx
je        short M02_L19
mov       rcx,[rcx]
M02_L12
 
test      rcx,rcx
je        short M02_L15
mov       rax,[rcx+78]
M02_L13
 
test      rax,rax
je        short M02_L14
mov       rcx,offset MT_System.Enum+EnumInfo`1[[System.UInt32, System.Private.CoreLib]]
cmp       [rax],rcx
je        short M02_L17
M02_L14
 
mov       rcx,rbx
xor       edx,edx
call      qword ptr [7FF9F61E7528]; System.Enum.g__InitializeEnumInfo|7_0[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, Boolean)
jmp       short M02_L17
M02_L15
 
xor       eax,eax
jmp       short M02_L13
M02_L16
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L17
 
mov       r15,[rax+8]
cmp       byte ptr [rax+19],0
je        near ptr M02_L32
mov       eax,r14d
mov       edx,[r15+8]
cmp       rdx,rax
seta      al
movzx     eax,al
M02_L18
 
jmp       short M02_L16
mov       rcx,offset MT_System.Char
cmp       [rsi],rcx
je        short M02_L21
jmp       short M02_L20
M02_L19
 
xor       ecx,ecx
jmp       short M02_L12
M02_L20
 
mov       rdx,rsi
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
M02_L21
 
movzx     edx,word ptr [rsi+8]
mov       rcx,rbx
call      qword ptr [7FF9F6A2C660]
jmp       short M02_L16
M02_L22
 
cmp       edi,0A
ja        near ptr M02_L37
mov       edx,edi
lea       rcx,[7FF9F691EBD0]
mov       ecx,[rcx+rdx*4]
lea       rax,[M02_L00]
add       rcx,rax
jmp       rcx
M02_L23
 
mov       rcx,rbp
call      qword ptr [7FF9F5D16658]; System.RuntimeType.InitializeCache()
jmp       near ptr M02_L09
M02_L24
 
xor       edi,edi
jmp       near ptr M02_L10
mov       rdx,rsi
mov       rcx,offset MT_System.SByte
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A2C648]
jmp       near ptr M02_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Byte
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A2C648]
jmp       near ptr M02_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Int16
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A2C630]
jmp       near ptr M02_L16
mov       rdx,rsi
mov       rcx,offset MT_System.UInt16
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A2C630]
jmp       near ptr M02_L16
M02_L25
 
mov       ecx,2E5
mov       rdx,7FF9F5C74000
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FF9F60566E8]
int       3
M02_L26
 
mov       rcx,rdi
mov       rdx,rbx
call      System.RuntimeTypeHandle.IsEquivalentTo(System.RuntimeType, System.RuntimeType)
test      eax,eax
jne       near ptr M02_L05
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F637CD98]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbx
call      qword ptr [7FF9F637C768]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F5DCF708]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L27
 
call      qword ptr [7FF9F5D17138]
int       3
M02_L28
 
mov       rcx,rbx
call      qword ptr [7FF9F5D14918]; System.Enum.GetNamesNoCopy(System.RuntimeType)
mov       r8,rsi
mov       rcx,offset MT_System.String
cmp       [r8],rcx
je        short M02_L29
mov       rdx,rsi
call      qword ptr [7FF9F5DC43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M02_L29
 
mov       rdx,rax
mov       rcx,offset MD_System.Array.IndexOf[[System.String, System.Private.CoreLib]](System.String[], System.String)
call      qword ptr [7FF9F6887D98]
not       eax
shr       eax,1F
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L30
 
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63A5170]
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F6056718]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M02_L31
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F637CDF8]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbp
call      qword ptr [7FF9F637C768]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F5DCF708]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L32
 
test      r15,r15
jne       short M02_L33
xor       ecx,ecx
xor       r8d,r8d
jmp       short M02_L34
M02_L33
 
lea       rcx,[r15+10]
mov       r8d,[r15+8]
M02_L34
 
cmp       dword ptr [r15+8],20
jle       short M02_L35
mov       edx,r8d
mov       r8d,r14d
call      qword ptr [7FF9F6A2E3B8]
jmp       short M02_L36
M02_L35
 
mov       edx,r14d
call      qword ptr [7FF9F6A2E880]; System.SpanHelpers.NonPackedIndexOfValueType[[System.Int32, System.Private.CoreLib],[System.SpanHelpers+DontNegate`1[[System.Int32, System.Private.CoreLib]], System.Private.CoreLib]](Int32 ByRef, Int32, Int32)
M02_L36
 
not       eax
shr       eax,1F
jmp       near ptr M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.UInt32
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       edx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6887DC8]; System.Enum.IsDefinedPrimitive[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, UInt32)
jmp       near ptr M02_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Int64
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A27BA0]
jmp       near ptr M02_L16
mov       rdx,rsi
mov       rcx,offset MT_System.UInt64
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A27BA0]
jmp       near ptr M02_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Single
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovss    xmm1,dword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A27498]
jmp       near ptr M02_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Double
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovsd    xmm1,qword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A27480]
jmp       near ptr M02_L16
M02_L37
 
mov       rcx,277152A4010
cmp       rbp,rcx
je        short M02_L39
mov       rcx,277152A6560
cmp       rbp,rcx
je        short M02_L38
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63A5170]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F6056718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L38
 
mov       rdx,rsi
mov       rcx,offset MT_System.UIntPtr
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A26D78]
jmp       short M02_L40
M02_L39
 
mov       rdx,rsi
mov       rcx,offset MT_System.IntPtr
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A26D78]
M02_L40
 
movzx     eax,al
jmp       near ptr M02_L16
M02_L41
 
mov       r15,rbp
mov       rcx,r15
call      qword ptr [7FF9F5D16AA8]; System.RuntimeType.get_IsActualEnum()
test      eax,eax
je        short M02_L42
mov       rcx,rbp
call      qword ptr [7FF9F5D0A728]; System.RuntimeType.GetEnumUnderlyingType()
mov       r15,rax
test      r15,r15
je        short M02_L42
mov       rcx,offset MT_System.RuntimeType
cmp       [r15],rcx
je        short M02_L42
mov       rdx,rax
call      qword ptr [7FF9F5DC43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M02_L42
 
mov       rcx,277152A6498
cmp       r15,rcx
jne       short M02_L43
mov       edi,5
jmp       near ptr M02_L58
M02_L43
 
mov       rcx,277152A4198
cmp       r15,rcx
jne       short M02_L44
mov       edi,6
jmp       near ptr M02_L58
M02_L44
 
mov       rcx,277152A64C0
cmp       r15,rcx
jne       short M02_L45
mov       edi,7
jmp       near ptr M02_L58
M02_L45
 
mov       rcx,277152A4038
cmp       r15,rcx
jne       short M02_L46
mov       edi,8
jmp       near ptr M02_L58
M02_L46
 
mov       rcx,277152A4248
cmp       r15,rcx
jne       short M02_L47
mov       edi,9
jmp       near ptr M02_L58
M02_L47
 
mov       rcx,277152A3F48
cmp       r15,rcx
jne       short M02_L48
mov       edi,0A
jmp       near ptr M02_L58
M02_L48
 
mov       rcx,277152A64E8
cmp       r15,rcx
jne       short M02_L49
mov       edi,0B
jmp       near ptr M02_L58
M02_L49
 
mov       rcx,277152A3D90
cmp       r15,rcx
jne       short M02_L50
mov       edi,0C
jmp       near ptr M02_L58
M02_L50
 
mov       rcx,277152A6448
cmp       r15,rcx
jne       short M02_L51
mov       edi,3
jmp       near ptr M02_L58
M02_L51
 
mov       rcx,277152A6470
cmp       r15,rcx
jne       short M02_L52
mov       edi,4
jmp       near ptr M02_L58
M02_L52
 
mov       rcx,277152A6510
cmp       r15,rcx
jne       short M02_L53
mov       edi,0D
jmp       short M02_L58
M02_L53
 
mov       rcx,277152A6538
cmp       r15,rcx
jne       short M02_L54
mov       edi,0E
jmp       short M02_L58
M02_L54
 
mov       rcx,277152A71E0
cmp       r15,rcx
jne       short M02_L55
mov       edi,0F
jmp       short M02_L58
M02_L55
 
mov       rcx,277152A3C08
cmp       r15,rcx
jne       short M02_L56
mov       edi,10
jmp       short M02_L58
M02_L56
 
mov       rcx,277152A0020
cmp       r15,rcx
jne       short M02_L57
mov       edi,12
jmp       short M02_L58
M02_L57
 
mov       rcx,277152B53E0
mov       edi,1
mov       eax,2
cmp       r15,rcx
cmove     edi,eax
M02_L58
 
cmp       qword ptr [rbp+10],0
je        short M02_L59
mov       rcx,[rbp+10]
mov       rax,[rcx]
test      rax,rax
je        short M02_L59
jmp       short M02_L60
M02_L59
 
mov       rcx,rbp
call      qword ptr [7FF9F5D16658]; System.RuntimeType.InitializeCache()
M02_L60
 
mov       [rax+90],edi
jmp       near ptr M02_L10
M02_L61
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,98
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
vmovdqa   xmmword ptr [rbp+20],xmm4
vmovdqa   xmmword ptr [rbp+30],xmm4
vmovdqa   xmmword ptr [rbp+40],xmm4
vmovdqa   xmmword ptr [rbp+50],xmm4
mov       [rbp+60],rax
mov       rax,486626F249A4
mov       [rbp],rax
mov       rsi,rcx
mov       rbx,rdx
mov       edi,r8d
mov       r14d,r9d
test      edi,edi
jl        near ptr M03_L06
test      r14d,0FFFFFFFC
jne       near ptr M03_L07
M03_L00
 
cmp       edi,1
jle       near ptr M03_L08
mov       r15d,[rsi+8]
test      r15d,r15d
je        near ptr M03_L08
cmp       dword ptr [rbx+8],0
je        near ptr M03_L10
M03_L01
 
test      [rsp],esp
sub       rsp,200
lea       rcx,[rsp+30]
mov       [rbp+58],rcx
mov       dword ptr [rbp+60],80
xor       ecx,ecx
mov       [rbp+48],rcx
mov       [rbp+50],ecx
lea       rcx,[rsi+0C]
mov       [rbp+38],rcx
mov       [rbp+40],r15d
vmovdqu   xmm0,xmmword ptr [rbx]
vmovdqu   xmmword ptr [rbp+28],xmm0
lea       rcx,[rbp+38]
lea       rdx,[rbp+28]
lea       r8,[rbp+48]
call      qword ptr [7FF9F5DC71B0]; System.String.MakeSeparatorListAny(System.ReadOnlySpan`1, System.ReadOnlySpan`1, System.Collections.Generic.ValueListBuilder`1 ByRef)
mov       eax,[rbp+50]
cmp       eax,[rbp+60]
ja        near ptr M03_L11
mov       r10,[rbp+58]
test      eax,eax
je        near ptr M03_L12
test      r14d,r14d
je        near ptr M03_L05
xor       ecx,ecx
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],rcx
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       [rsp+28],r14d
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DC7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       rbx,rax
M03_L02
 
mov       rdx,[rbp+48]
test      rdx,rdx
je        short M03_L03
xor       ecx,ecx
mov       [rbp+48],rcx
mov       rcx,23687401F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65C5250]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M03_L03
 
mov       rax,rbx
mov       rcx,486626F249A4
cmp       [rbp],rcx
je        short M03_L04
call      CORINFO_HELP_FAIL_FAST
M03_L04
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L05
 
xor       r14d,r14d
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],r14
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DC7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       rbx,rax
jmp       short M03_L02
M03_L06
 
mov       ecx,1C7
mov       rdx,7FF9F5C74000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,edi
call      qword ptr [7FF9F688ECD0]
int       3
M03_L07
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F602ECB8]
int       3
M03_L08
 
mov       rcx,rsi
mov       edx,r14d
mov       r8d,edi
call      qword ptr [7FF9F5DC7150]; System.String.CreateSplitArrayOfThisAsSoleValue(System.StringSplitOptions, Int32)
mov       rcx,486626F249A4
cmp       [rbp],rcx
je        short M03_L09
call      CORINFO_HELP_FAIL_FAST
M03_L09
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L10
 
cmp       r15d,edi
jge       near ptr M03_L01
and       r14d,0FFFFFFFD
jmp       near ptr M03_L01
M03_L11
 
call      qword ptr [7FF9F602E9D0]
int       3
M03_L12
 
mov       edi,1
jmp       near ptr M03_L00
 
System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,edx
mov       edi,[rbx+8]
lea       ebp,[rdi-1]
mov       r14d,ebp
xor       r15d,r15d
test      sil,1
je        short M04_L03
xor       r15d,r15d
test      edi,edi
jle       short M04_L03
M04_L00
 
mov       ecx,r15d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L01
mov       rax,[7FFA534C0728]
test      byte ptr [rax+rcx],80
je        short M04_L03
jmp       short M04_L02
M04_L01
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L03
M04_L02
 
inc       r15d
cmp       edi,r15d
jg        short M04_L00
M04_L03
 
test      sil,2
je        near ptr M04_L10
mov       r14d,ebp
cmp       r14d,r15d
jl        short M04_L10
mov       ecx,r14d
or        ecx,r15d
jl        short M04_L07
cmp       edi,r14d
jle       short M04_L07
M04_L04
 
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L05
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L06
M04_L05
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L06
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L04
jmp       short M04_L10
M04_L07
 
cmp       r14d,edi
jae       short M04_L14
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L08
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L09
M04_L08
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L09
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L07
M04_L10
 
mov       r8d,r14d
sub       r8d,r15d
inc       r8d
cmp       edi,r8d
jne       short M04_L12
mov       rax,rbx
M04_L11
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L12
 
test      r8d,r8d
je        short M04_L13
mov       rcx,rbx
mov       edx,r15d
call      qword ptr [7FFA534A34A0]; Precode of System.String.InternalSubString(Int32, Int32)
jmp       short M04_L11
M04_L13
 
mov       rax,[7FFA534C08A0]
mov       rax,[rax]
jmp       short M04_L11
M04_L14
 
call      qword ptr [7FFA53493D20]; CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.SplitWithRemoveEmptyEntries()
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,48
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
xor       eax,eax
mov       [rbp-40],rax
mov       [rbp-60],rsp
mov       rbx,rcx
mov       rsi,[rbx+298]
test      rsi,rsi
je        short M00_L00
xor       ecx,ecx
cmp       dword ptr [rsi+8],0
sete      cl
test      ecx,ecx
sete      cl
movzx     ecx,cl
cmp       dword ptr [rsi+8],0
jne       short M00_L01
jmp       short M00_L01
M00_L00
 
xor       ecx,ecx
M00_L01
 
test      ecx,ecx
je        near ptr M00_L24
cmp       dword ptr [rsi+8],0
je        short M00_L03
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       near ptr M00_L05
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L26
M00_L02
 
mov       ecx,[rsi+8]
dec       ecx
cmp       ecx,[rsi+8]
jae       near ptr M00_L32
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       near ptr M00_L06
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L26
M00_L03
 
mov       rcx,offset MT_System.StringSplitOptions
call      CORINFO_HELP_NEWSFAST
mov       dword ptr [rax+8],1
mov       rdx,rax
mov       rcx,20EB88D77F8
cmp       [rcx],ecx
call      qword ptr [7FF9F5CFA770]; System.RuntimeType.IsEnumDefined(System.Object)
test      eax,eax
je        near ptr M00_L27
mov       rcx,offset MT_System.Char[]
mov       edx,1
call      CORINFO_HELP_NEWARR_1_VC
mov       word ptr [rax+10],2E
cmp       [rsi],sil
add       rax,10
mov       rcx,rsi
mov       [rbp-50],rax
mov       dword ptr [rbp-48],1
lea       rdx,[rbp-50]
mov       r9d,1
mov       r8d,7FFFFFFF
call      qword ptr [7FF9F5DB70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
mov       rsi,rax
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyCollection`1[[System.String, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
test      rsi,rsi
je        near ptr M00_L29
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+8]
mov       r11,7FF9F5C70FC0
call      qword ptr [r11]
test      eax,eax
je        near ptr M00_L30
mov       rcx,[rdi+8]
mov       r11,7FF9F5C70FC8
call      qword ptr [r11]
mov       rsi,rax
M00_L04
 
mov       [rbp-58],rsi
jmp       short M00_L07
M00_L05
 
call      qword ptr [7FF9F670E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L26
jmp       near ptr M00_L02
M00_L06
 
call      qword ptr [7FF9F670E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L26
jmp       near ptr M00_L03
M00_L07
 
test      rsi,rsi
je        near ptr M00_L16
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
jne       near ptr M00_L16
jmp       short M00_L10
M00_L08
 
mov       r10,rsi
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       near ptr M00_L19
mov       r13,[r10+10]
cmp       r9d,[r13+8]
jae       short M00_L11
mov       ecx,r9d
mov       r12,[r13+rcx*8+10]
M00_L09
 
mov       [rbp-40],r12
mov       r12,[rbx+18]
mov       rdx,[rbp-40]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
M00_L10
 
cmp       rdi,r14
jne       short M00_L13
mov       rax,rsi
mov       r8d,[rax+8]
inc       r8d
mov       r15d,[rax+0C]
cmp       r8d,r15d
jae       short M00_L12
mov       [rax+8],r8d
jmp       short M00_L08
M00_L11
 
call      CORINFO_HELP_RNGCHKFAIL
M00_L12
 
mov       [rax+8],r15d
jmp       near ptr M00_L22
M00_L13
 
mov       rcx,rsi
mov       r11,7FF9F5C70FA8
call      qword ptr [r11]
test      eax,eax
jne       near ptr M00_L20
jmp       near ptr M00_L22
M00_L14
 
mov       r10,rsi
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       short M00_L19
mov       r13,[r10+10]
cmp       r9d,[r13+8]
jae       short M00_L11
mov       ecx,r9d
mov       r12,[r13+rcx*8+10]
M00_L15
 
mov       [rbp-40],r12
mov       r12,[rbx+18]
mov       rdx,[rbp-40]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
M00_L16
 
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
jne       short M00_L17
mov       rax,rsi
mov       r8d,[rax+8]
inc       r8d
mov       r15d,[rax+0C]
cmp       r8d,r15d
jae       short M00_L18
mov       [rax+8],r8d
jmp       short M00_L14
M00_L17
 
mov       rcx,rsi
mov       r11,7FF9F5C70FA8
call      qword ptr [r11]
test      eax,eax
jne       short M00_L21
jmp       short M00_L22
M00_L18
 
mov       [rax+8],r15d
jmp       short M00_L22
M00_L19
 
mov       ecx,[r10+8]
call      qword ptr [7FF9F601EFD0]
int       3
M00_L20
 
mov       rcx,rsi
mov       r11,7FF9F5C70FB0
call      qword ptr [r11]
mov       r12,rax
jmp       near ptr M00_L09
M00_L21
 
mov       rcx,rsi
mov       r11,7FF9F5C70FB0
call      qword ptr [r11]
mov       r12,rax
jmp       near ptr M00_L15
M00_L22
 
cmp       rdi,r14
jne       near ptr M00_L31
M00_L23
 
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M00_L24
 
call      qword ptr [7FF9F6335368]
mov       rsi,rax
test      rsi,rsi
jne       short M00_L25
call      qword ptr [7FF9F63350B0]
mov       rsi,rax
M00_L25
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,20EB88C8468
mov       r8,rsi
call      qword ptr [7FF9F6046670]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M00_L26
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DB73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L03
M00_L27
 
call      qword ptr [7FF9F6335170]
mov       rdi,rax
test      rdi,rdi
jne       short M00_L28
call      qword ptr [7FF9F63350C8]
mov       rdi,rax
M00_L28
 
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,20EB88C9EE0
mov       r8,rdi
call      qword ptr [7FF9F5E6D470]
mov       rcx,r14
call      CORINFO_HELP_THROW
M00_L29
 
mov       ecx,14
call      qword ptr [7FF9F601ED00]
int       3
M00_L30
 
mov       rcx,7FF9F5CF5120
mov       edx,20
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,1CE2A802000
mov       rsi,[rcx]
jmp       near ptr M00_L04
M00_L31
 
mov       rcx,rsi
mov       r11,7FF9F5C70FB8
call      qword ptr [r11]
jmp       near ptr M00_L23
M00_L32
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M00_L33
mov       rsi,[rbp-58]
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
je        short M00_L33
mov       rcx,rsi
mov       r11,7FF9F5C70FB8
call      qword ptr [r11]
M00_L33
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.RuntimeType.IsEnumDefined(System.Object)
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,20
vzeroupper
mov       rbx,rcx
mov       rsi,rdx
M01_L00
 
test      rsi,rsi
je        near ptr M01_L30
mov       rcx,[rbx+18]
mov       rax,rcx
test      cl,2
jne       short M01_L01
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M01_L02
M01_L01
 
xor       ecx,ecx
M01_L02
 
movzx     ecx,cl
test      ecx,ecx
je        near ptr M01_L32
mov       rcx,rsi
call      System.Object.GetType()
mov       rdi,rax
mov       rcx,[rdi+18]
mov       rax,rcx
test      cl,2
jne       short M01_L03
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M01_L04
M01_L03
 
xor       ecx,ecx
M01_L04
 
movzx     ecx,cl
test      ecx,ecx
je        short M01_L08
cmp       rbx,rdi
jne       near ptr M01_L31
M01_L05
 
mov       rcx,[rdi+18]
mov       rax,rcx
mov       rdx,rax
test      al,2
jne       short M01_L06
mov       rax,[rdx+10]
mov       rdx,offset MT_System.Enum
cmp       rax,rdx
sete      al
movzx     eax,al
jmp       short M01_L07
M01_L06
 
xor       eax,eax
M01_L07
 
movzx     eax,al
test      eax,eax
je        near ptr M01_L32
mov       rax,1CE2A8000A0
mov       rbp,[rax]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M01_L58
mov       ecx,eax
mov       rcx,[rbp+rcx*8+10]
mov       rdi,rcx
M01_L08
 
mov       rcx,20EB88C0020
cmp       rdi,rcx
je        near ptr M01_L33
mov       rcx,rdi
call      qword ptr [7FF9F5D06070]; System.Type.IsIntegerType(System.Type)
test      eax,eax
je        near ptr M01_L35
mov       rcx,1CE2A8000A0
mov       rbp,[rcx]
mov       rcx,[rbx+18]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M01_L58
mov       ecx,eax
mov       rbp,[rbp+rcx*8+10]
cmp       rbp,rdi
jne       near ptr M01_L36
test      rbp,rbp
je        near ptr M01_L20
mov       rcx,[rbp+10]
test      rcx,rcx
je        near ptr M01_L16
mov       rax,[rcx]
test      rax,rax
je        near ptr M01_L16
M01_L09
 
mov       r14d,[rax+90]
test      r14d,r14d
je        near ptr M01_L37
M01_L10
 
add       r14d,0FFFFFFFC
cmp       r14d,5
jne       near ptr M01_L57
mov       rdx,offset MT_System.Int32
cmp       [rsi],rdx
je        short M01_L11
mov       rdx,rsi
mov       rcx,offset MT_System.Int32
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
M01_L11
 
mov       r15d,[rsi+8]
mov       rcx,[rbx+10]
test      rcx,rcx
je        short M01_L19
mov       rcx,[rcx]
M01_L12
 
test      rcx,rcx
je        short M01_L15
mov       rax,[rcx+78]
M01_L13
 
test      rax,rax
je        short M01_L14
mov       rcx,offset MT_System.Enum+EnumInfo`1[[System.UInt32, System.Private.CoreLib]]
cmp       [rax],rcx
je        short M01_L17
M01_L14
 
mov       rcx,rbx
xor       edx,edx
call      qword ptr [7FF9F61D7528]; System.Enum.g__InitializeEnumInfo|7_0[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, Boolean)
jmp       short M01_L17
M01_L15
 
xor       eax,eax
jmp       short M01_L13
M01_L16
 
mov       rcx,rbp
call      qword ptr [7FF9F5D06658]; System.RuntimeType.InitializeCache()
jmp       near ptr M01_L09
M01_L17
 
mov       r13,[rax+8]
cmp       byte ptr [rax+19],0
je        near ptr M01_L21
mov       eax,r15d
mov       ecx,[r13+8]
cmp       rcx,rax
seta      al
movzx     eax,al
M01_L18
 
add       rsp,20
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
ret
M01_L19
 
xor       ecx,ecx
jmp       short M01_L12
M01_L20
 
xor       r14d,r14d
jmp       near ptr M01_L10
mov       rdx,rsi
mov       rcx,offset MT_System.SByte
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A0CD50]
jmp       short M01_L18
mov       rdx,rsi
mov       rcx,offset MT_System.Byte
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A0CD50]
jmp       short M01_L18
mov       rdx,rsi
mov       rcx,offset MT_System.Int16
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A0CD38]
jmp       short M01_L18
mov       rdx,rsi
mov       rcx,offset MT_System.UInt16
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A0CD38]
jmp       near ptr M01_L18
M01_L21
 
test      r13,r13
jne       short M01_L22
xor       ecx,ecx
xor       r8d,r8d
jmp       short M01_L23
M01_L22
 
lea       rcx,[r13+10]
mov       r8d,[r13+8]
M01_L23
 
cmp       dword ptr [r13+8],20
jle       short M01_L24
mov       edx,r8d
mov       r8d,r15d
call      qword ptr [7FF9F6A0EAC0]
jmp       short M01_L25
M01_L24
 
mov       edx,r15d
call      qword ptr [7FF9F6A0EF88]; System.SpanHelpers.NonPackedIndexOfValueType[[System.Int32, System.Private.CoreLib],[System.SpanHelpers+DontNegate`1[[System.Int32, System.Private.CoreLib]], System.Private.CoreLib]](Int32 ByRef, Int32, Int32)
M01_L25
 
not       eax
shr       eax,1F
jmp       near ptr M01_L18
mov       rdx,rsi
mov       rcx,offset MT_System.UInt32
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       edx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F687D9B0]; System.Enum.IsDefinedPrimitive[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, UInt32)
jmp       near ptr M01_L18
mov       rdx,rsi
mov       rcx,offset MT_System.Int64
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A0C630]
jmp       near ptr M01_L18
mov       rdx,rsi
mov       rcx,offset MT_System.UInt64
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A0C630]
jmp       near ptr M01_L18
mov       rdx,rsi
mov       rcx,offset MT_System.Single
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovss    xmm1,dword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A07DE0]
jmp       near ptr M01_L18
mov       rdx,rsi
mov       rcx,offset MT_System.Double
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovsd    xmm1,qword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A07DC8]
jmp       near ptr M01_L18
mov       rdx,rsi
mov       rcx,offset MT_System.Char
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A0CD68]
jmp       near ptr M01_L18
M01_L26
 
mov       rcx,20EB88C4010
cmp       rbp,rcx
je        short M01_L28
mov       rcx,20EB88C6560
cmp       rbp,rcx
je        short M01_L27
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F6395170]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F6046718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L27
 
mov       rdx,rsi
mov       rcx,offset MT_System.UIntPtr
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A076C0]
jmp       short M01_L29
M01_L28
 
mov       rdx,rsi
mov       rcx,offset MT_System.IntPtr
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A076C0]
M01_L29
 
movzx     eax,al
jmp       near ptr M01_L18
M01_L30
 
mov       ecx,2E5
mov       rdx,7FF9F5C64000
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FF9F60466E8]
int       3
M01_L31
 
mov       rcx,rdi
mov       rdx,rbx
call      System.RuntimeTypeHandle.IsEquivalentTo(System.RuntimeType, System.RuntimeType)
test      eax,eax
jne       near ptr M01_L05
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F636CD98]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbx
call      qword ptr [7FF9F636C768]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F5DBF708]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L32
 
call      qword ptr [7FF9F5D07138]
int       3
M01_L33
 
mov       rcx,rbx
call      qword ptr [7FF9F5D04918]; System.Enum.GetNamesNoCopy(System.RuntimeType)
mov       r8,rsi
mov       rcx,offset MT_System.String
cmp       [r8],rcx
je        short M01_L34
mov       rdx,rsi
call      qword ptr [7FF9F5DB43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M01_L34
 
mov       rdx,rax
mov       rcx,offset MD_System.Array.IndexOf[[System.String, System.Private.CoreLib]](System.String[], System.String)
call      qword ptr [7FF9F687D980]
not       eax
shr       eax,1F
add       rsp,20
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
ret
M01_L35
 
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F6395170]
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F6046718]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L36
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
call      qword ptr [7FF9F636CDF8]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbp
call      qword ptr [7FF9F636C768]
mov       rdx,rax
mov       rcx,r14
call      qword ptr [7FF9F5DBF708]
mov       rcx,r14
call      CORINFO_HELP_THROW
M01_L37
 
mov       r13,rbp
mov       rcx,r13
call      qword ptr [7FF9F5D06AA8]; System.RuntimeType.get_IsActualEnum()
test      eax,eax
je        short M01_L38
mov       rcx,rbp
call      qword ptr [7FF9F5CFA728]; System.RuntimeType.GetEnumUnderlyingType()
mov       r13,rax
test      r13,r13
je        short M01_L38
mov       rcx,offset MT_System.RuntimeType
cmp       [r13],rcx
je        short M01_L38
mov       rdx,rax
call      qword ptr [7FF9F5DB43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M01_L38
 
mov       rcx,20EB88C6498
cmp       r13,rcx
jne       short M01_L39
mov       r14d,5
jmp       near ptr M01_L54
M01_L39
 
mov       rcx,20EB88C4198
cmp       r13,rcx
jne       short M01_L40
mov       r14d,6
jmp       near ptr M01_L54
M01_L40
 
mov       rcx,20EB88C64C0
cmp       r13,rcx
jne       short M01_L41
mov       r14d,7
jmp       near ptr M01_L54
M01_L41
 
mov       rcx,20EB88C4038
cmp       r13,rcx
jne       short M01_L42
mov       r14d,8
jmp       near ptr M01_L54
M01_L42
 
mov       rcx,20EB88C4248
cmp       r13,rcx
jne       short M01_L43
mov       r14d,9
jmp       near ptr M01_L54
M01_L43
 
mov       rcx,20EB88C3F48
cmp       r13,rcx
jne       short M01_L44
mov       r14d,0A
jmp       near ptr M01_L54
M01_L44
 
mov       rcx,20EB88C64E8
cmp       r13,rcx
jne       short M01_L45
mov       r14d,0B
jmp       near ptr M01_L54
M01_L45
 
mov       rcx,20EB88C3D90
cmp       r13,rcx
jne       short M01_L46
mov       r14d,0C
jmp       near ptr M01_L54
M01_L46
 
mov       rcx,20EB88C6448
cmp       r13,rcx
jne       short M01_L47
mov       r14d,3
jmp       near ptr M01_L54
M01_L47
 
mov       rcx,20EB88C6470
cmp       r13,rcx
jne       short M01_L48
mov       r14d,4
jmp       near ptr M01_L54
M01_L48
 
mov       rcx,20EB88C6510
cmp       r13,rcx
jne       short M01_L49
mov       r14d,0D
jmp       short M01_L54
M01_L49
 
mov       rcx,20EB88C6538
cmp       r13,rcx
jne       short M01_L50
mov       r14d,0E
jmp       short M01_L54
M01_L50
 
mov       rcx,20EB88C71E0
cmp       r13,rcx
jne       short M01_L51
mov       r14d,0F
jmp       short M01_L54
M01_L51
 
mov       rcx,20EB88C3C08
cmp       r13,rcx
jne       short M01_L52
mov       r14d,10
jmp       short M01_L54
M01_L52
 
mov       rcx,20EB88C0020
cmp       r13,rcx
jne       short M01_L53
mov       r14d,12
jmp       short M01_L54
M01_L53
 
mov       rcx,20EB88D53E0
mov       r14d,1
mov       eax,2
cmp       r13,rcx
cmove     r14d,eax
M01_L54
 
cmp       qword ptr [rbp+10],0
je        short M01_L55
mov       rcx,[rbp+10]
mov       rax,[rcx]
test      rax,rax
je        short M01_L55
jmp       short M01_L56
M01_L55
 
mov       rcx,rbp
call      qword ptr [7FF9F5D06658]; System.RuntimeType.InitializeCache()
M01_L56
 
mov       [rax+90],r14d
jmp       near ptr M01_L10
M01_L57
 
cmp       r14d,0A
ja        near ptr M01_L26
mov       edx,r14d
lea       rcx,[7FF9F691B7C0]
mov       ecx,[rcx+rdx*4]
lea       rax,[M01_L00]
add       rcx,rax
jmp       rcx
M01_L58
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,98
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
vmovdqa   xmmword ptr [rbp+20],xmm4
vmovdqa   xmmword ptr [rbp+30],xmm4
vmovdqa   xmmword ptr [rbp+40],xmm4
vmovdqa   xmmword ptr [rbp+50],xmm4
mov       [rbp+60],rax
mov       rax,0D1135691BCE5
mov       [rbp],rax
mov       rsi,rcx
mov       rbx,rdx
mov       edi,r8d
mov       r14d,r9d
test      edi,edi
jl        near ptr M02_L05
test      r14d,0FFFFFFFC
jne       near ptr M02_L06
M02_L00
 
cmp       edi,1
jle       near ptr M02_L07
mov       r15d,[rsi+8]
test      r15d,r15d
je        near ptr M02_L07
cmp       dword ptr [rbx+8],0
je        near ptr M02_L09
M02_L01
 
test      [rsp],esp
sub       rsp,200
lea       rcx,[rsp+30]
mov       [rbp+58],rcx
mov       dword ptr [rbp+60],80
xor       ecx,ecx
mov       [rbp+48],rcx
mov       [rbp+50],ecx
lea       rcx,[rsi+0C]
mov       [rbp+38],rcx
mov       [rbp+40],r15d
vmovdqu   xmm0,xmmword ptr [rbx]
vmovdqu   xmmword ptr [rbp+28],xmm0
lea       rcx,[rbp+38]
lea       rdx,[rbp+28]
lea       r8,[rbp+48]
call      qword ptr [7FF9F5DB71B0]; System.String.MakeSeparatorListAny(System.ReadOnlySpan`1, System.ReadOnlySpan`1, System.Collections.Generic.ValueListBuilder`1 ByRef)
mov       eax,[rbp+50]
cmp       eax,[rbp+60]
ja        near ptr M02_L10
mov       r10,[rbp+58]
test      eax,eax
je        near ptr M02_L11
test      r14d,r14d
je        near ptr M02_L12
xor       r15d,r15d
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],r15
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       [rsp+28],r14d
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DB7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       rdi,rax
M02_L02
 
mov       rdx,[rbp+48]
test      rdx,rdx
je        short M02_L03
xor       ecx,ecx
mov       [rbp+48],rcx
mov       rcx,1CE2A801F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65B4C18]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M02_L03
 
mov       rax,rdi
mov       rcx,0D1135691BCE5
cmp       [rbp],rcx
je        short M02_L04
call      CORINFO_HELP_FAIL_FAST
M02_L04
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M02_L05
 
mov       ecx,1C7
mov       rdx,7FF9F5C64000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,edi
call      qword ptr [7FF9F68A47F8]
int       3
M02_L06
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F601ECB8]
int       3
M02_L07
 
mov       rcx,rsi
mov       edx,r14d
mov       r8d,edi
call      qword ptr [7FF9F5DB7150]; System.String.CreateSplitArrayOfThisAsSoleValue(System.StringSplitOptions, Int32)
mov       rcx,0D1135691BCE5
cmp       [rbp],rcx
je        short M02_L08
call      CORINFO_HELP_FAIL_FAST
M02_L08
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M02_L09
 
cmp       r15d,edi
jge       near ptr M02_L01
and       r14d,0FFFFFFFD
jmp       near ptr M02_L01
M02_L10
 
call      qword ptr [7FF9F601E9D0]
int       3
M02_L11
 
mov       edi,1
jmp       near ptr M02_L00
M02_L12
 
xor       r15d,r15d
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],r15
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DB7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       rdi,rax
jmp       near ptr M02_L02
 
System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
sub       rsp,28
movzx     ecx,cx
call      qword ptr [7FFA534A7370]; Precode of System.Globalization.CharUnicodeInfo.GetCategoryCasingTableOffsetNoBoundsChecks(UInt32)
mov       rcx,[7FFA534C0750]
cmp       byte ptr [rcx+rax],0
setl      al
movzx     eax,al
add       rsp,28
ret
 
System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,edx
mov       edi,[rbx+8]
lea       ebp,[rdi-1]
mov       r14d,ebp
xor       r15d,r15d
test      sil,1
je        short M04_L03
xor       r15d,r15d
test      edi,edi
jle       short M04_L03
M04_L00
 
mov       ecx,r15d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L01
mov       rax,[7FFA534C0728]
test      byte ptr [rax+rcx],80
je        short M04_L03
jmp       short M04_L02
M04_L01
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L03
M04_L02
 
inc       r15d
cmp       edi,r15d
jg        short M04_L00
M04_L03
 
test      sil,2
je        near ptr M04_L10
mov       r14d,ebp
cmp       r14d,r15d
jl        short M04_L10
mov       ecx,r14d
or        ecx,r15d
jl        short M04_L07
cmp       edi,r14d
jle       short M04_L07
M04_L04
 
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L05
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L06
M04_L05
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L06
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L04
jmp       short M04_L10
M04_L07
 
cmp       r14d,edi
jae       short M04_L14
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L08
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L09
M04_L08
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L09
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L07
M04_L10
 
mov       r8d,r14d
sub       r8d,r15d
inc       r8d
cmp       edi,r8d
jne       short M04_L12
mov       rax,rbx
M04_L11
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L12
 
test      r8d,r8d
je        short M04_L13
mov       rcx,rbx
mov       edx,r15d
call      qword ptr [7FFA534A34A0]; Precode of System.String.InternalSubString(Int32, Int32)
jmp       short M04_L11
M04_L13
 
mov       rax,[7FFA534C08A0]
mov       rax,[rax]
jmp       short M04_L11
M04_L14
 
call      qword ptr [7FFA53493D20]; CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.SplitWithRemoveEmptyEntries()
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,48
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
xor       eax,eax
mov       [rbp-40],rax
mov       [rbp-60],rsp
mov       rbx,rcx
mov       rsi,[rbx+298]
test      rsi,rsi
je        short M00_L00
xor       ecx,ecx
cmp       dword ptr [rsi+8],0
sete      cl
test      ecx,ecx
sete      cl
movzx     ecx,cl
cmp       dword ptr [rsi+8],0
jne       short M00_L01
jmp       short M00_L01
M00_L00
 
xor       ecx,ecx
M00_L01
 
test      ecx,ecx
je        near ptr M00_L24
cmp       dword ptr [rsi+8],0
je        short M00_L03
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       near ptr M00_L05
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L26
M00_L02
 
mov       ecx,[rsi+8]
dec       ecx
cmp       ecx,[rsi+8]
jae       near ptr M00_L32
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       near ptr M00_L06
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L26
M00_L03
 
mov       rcx,offset MT_System.StringSplitOptions
call      CORINFO_HELP_NEWSFAST
mov       dword ptr [rax+8],1
mov       rdx,rax
mov       rcx,1B93DF777F8
cmp       [rcx],ecx
call      qword ptr [7FF9F5D1A770]; System.RuntimeType.IsEnumDefined(System.Object)
test      eax,eax
je        near ptr M00_L27
mov       rcx,offset MT_System.Char[]
mov       edx,1
call      CORINFO_HELP_NEWARR_1_VC
mov       word ptr [rax+10],2E
cmp       [rsi],sil
add       rax,10
mov       rcx,rsi
mov       [rbp-50],rax
mov       dword ptr [rbp-48],1
lea       rdx,[rbp-50]
mov       r9d,1
mov       r8d,7FFFFFFF
call      qword ptr [7FF9F5DD70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
mov       rsi,rax
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyCollection`1[[System.String, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
test      rsi,rsi
je        near ptr M00_L29
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+8]
mov       r11,7FF9F5C90FC0
call      qword ptr [r11]
test      eax,eax
je        near ptr M00_L30
mov       rcx,[rdi+8]
mov       r11,7FF9F5C90FC8
call      qword ptr [r11]
mov       rsi,rax
M00_L04
 
mov       [rbp-58],rsi
jmp       short M00_L07
M00_L05
 
call      qword ptr [7FF9F672E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L26
jmp       near ptr M00_L02
M00_L06
 
call      qword ptr [7FF9F672E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L26
jmp       near ptr M00_L03
M00_L07
 
test      rsi,rsi
je        near ptr M00_L16
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
jne       near ptr M00_L16
jmp       short M00_L10
M00_L08
 
mov       r10,rsi
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       near ptr M00_L19
mov       r13,[r10+10]
cmp       r9d,[r13+8]
jae       short M00_L11
mov       ecx,r9d
mov       r12,[r13+rcx*8+10]
M00_L09
 
mov       [rbp-40],r12
mov       r12,[rbx+18]
mov       rdx,[rbp-40]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
M00_L10
 
cmp       rdi,r14
jne       short M00_L13
mov       rax,rsi
mov       r8d,[rax+8]
inc       r8d
mov       r15d,[rax+0C]
cmp       r8d,r15d
jae       short M00_L12
mov       [rax+8],r8d
jmp       short M00_L08
M00_L11
 
call      CORINFO_HELP_RNGCHKFAIL
M00_L12
 
mov       [rax+8],r15d
jmp       near ptr M00_L22
M00_L13
 
mov       rcx,rsi
mov       r11,7FF9F5C90FA8
call      qword ptr [r11]
test      eax,eax
jne       near ptr M00_L20
jmp       near ptr M00_L22
M00_L14
 
mov       r10,rsi
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       short M00_L19
mov       r13,[r10+10]
cmp       r9d,[r13+8]
jae       short M00_L11
mov       ecx,r9d
mov       r12,[r13+rcx*8+10]
M00_L15
 
mov       [rbp-40],r12
mov       r12,[rbx+18]
mov       rdx,[rbp-40]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
M00_L16
 
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
jne       short M00_L17
mov       rax,rsi
mov       r8d,[rax+8]
inc       r8d
mov       r15d,[rax+0C]
cmp       r8d,r15d
jae       short M00_L18
mov       [rax+8],r8d
jmp       short M00_L14
M00_L17
 
mov       rcx,rsi
mov       r11,7FF9F5C90FA8
call      qword ptr [r11]
test      eax,eax
jne       short M00_L21
jmp       short M00_L22
M00_L18
 
mov       [rax+8],r15d
jmp       short M00_L22
M00_L19
 
mov       ecx,[r10+8]
call      qword ptr [7FF9F603EFD0]
int       3
M00_L20
 
mov       rcx,rsi
mov       r11,7FF9F5C90FB0
call      qword ptr [r11]
mov       r12,rax
jmp       near ptr M00_L09
M00_L21
 
mov       rcx,rsi
mov       r11,7FF9F5C90FB0
call      qword ptr [r11]
mov       r12,rax
jmp       near ptr M00_L15
M00_L22
 
cmp       rdi,r14
jne       near ptr M00_L31
M00_L23
 
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M00_L24
 
call      qword ptr [7FF9F6355368]
mov       rsi,rax
test      rsi,rsi
jne       short M00_L25
call      qword ptr [7FF9F63550B0]
mov       rsi,rax
M00_L25
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,1B93DF68468
mov       r8,rsi
call      qword ptr [7FF9F6066670]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M00_L26
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DD73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L03
M00_L27
 
call      qword ptr [7FF9F6355170]
mov       rdi,rax
test      rdi,rdi
jne       short M00_L28
call      qword ptr [7FF9F63550C8]
mov       rdi,rax
M00_L28
 
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,1B93DF69EE0
mov       r8,rdi
call      qword ptr [7FF9F5E8D470]
mov       rcx,r14
call      CORINFO_HELP_THROW
M00_L29
 
mov       ecx,14
call      qword ptr [7FF9F603ED00]
int       3
M00_L30
 
mov       rcx,7FF9F5D15120
mov       edx,20
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,178AC002000
mov       rsi,[rcx]
jmp       near ptr M00_L04
M00_L31
 
mov       rcx,rsi
mov       r11,7FF9F5C90FB8
call      qword ptr [r11]
jmp       near ptr M00_L23
M00_L32
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M00_L33
mov       rsi,[rbp-58]
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
je        short M00_L33
mov       rcx,rsi
mov       r11,7FF9F5C90FB8
call      qword ptr [r11]
M00_L33
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.RuntimeType.IsEnumDefined(System.Object)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
vzeroupper
mov       rbx,rcx
mov       rsi,rdx
M01_L00
 
test      rsi,rsi
je        near ptr M01_L24
mov       rcx,[rbx+18]
mov       rax,rcx
test      cl,2
jne       short M01_L01
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M01_L02
M01_L01
 
xor       ecx,ecx
M01_L02
 
movzx     ecx,cl
test      ecx,ecx
je        near ptr M01_L26
mov       rcx,rsi
call      System.Object.GetType()
mov       rdi,rax
mov       rcx,[rdi+18]
mov       rax,rcx
test      cl,2
jne       short M01_L03
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M01_L04
M01_L03
 
xor       ecx,ecx
M01_L04
 
movzx     ecx,cl
test      ecx,ecx
je        short M01_L08
cmp       rbx,rdi
jne       near ptr M01_L25
M01_L05
 
mov       rcx,[rdi+18]
mov       rax,rcx
mov       rdx,rax
test      al,2
jne       short M01_L06
mov       rax,[rdx+10]
mov       rdx,offset MT_System.Enum
cmp       rax,rdx
sete      al
movzx     eax,al
jmp       short M01_L07
M01_L06
 
xor       eax,eax
M01_L07
 
movzx     eax,al
test      eax,eax
je        near ptr M01_L26
mov       rax,178AC0000A0
mov       rbp,[rax]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M01_L60
mov       ecx,eax
mov       rcx,[rbp+rcx*8+10]
mov       rdi,rcx
M01_L08
 
mov       rcx,1B93DF60020
cmp       rdi,rcx
je        near ptr M01_L27
mov       rcx,rdi
call      qword ptr [7FF9F5D26070]; System.Type.IsIntegerType(System.Type)
test      eax,eax
je        near ptr M01_L29
mov       rcx,178AC0000A0
mov       rbp,[rcx]
mov       rcx,[rbx+18]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M01_L60
mov       ecx,eax
mov       rbp,[rbp+rcx*8+10]
cmp       rbp,rdi
jne       near ptr M01_L30
test      rbp,rbp
je        near ptr M01_L23
mov       rcx,[rbp+10]
test      rcx,rcx
je        near ptr M01_L19
mov       rax,[rcx]
test      rax,rax
je        near ptr M01_L19
M01_L09
 
mov       edi,[rax+90]
test      edi,edi
je        near ptr M01_L40
M01_L10
 
add       edi,0FFFFFFFC
cmp       edi,5
jne       near ptr M01_L22
mov       rdx,offset MT_System.Int32
cmp       [rsi],rdx
je        short M01_L11
mov       rdx,rsi
mov       rcx,offset MT_System.Int32
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
M01_L11
 
mov       r14d,[rsi+8]
mov       rcx,[rbx+10]
test      rcx,rcx
je        short M01_L20
mov       rcx,[rcx]
M01_L12
 
test      rcx,rcx
je        short M01_L15
mov       rax,[rcx+78]
M01_L13
 
test      rax,rax
je        short M01_L14
mov       rcx,offset MT_System.Enum+EnumInfo`1[[System.UInt32, System.Private.CoreLib]]
cmp       [rax],rcx
je        short M01_L17
M01_L14
 
mov       rcx,rbx
xor       edx,edx
call      qword ptr [7FF9F61F7528]; System.Enum.g__InitializeEnumInfo|7_0[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, Boolean)
jmp       short M01_L17
M01_L15
 
xor       eax,eax
jmp       short M01_L13
M01_L16
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L17
 
mov       r15,[rax+8]
cmp       byte ptr [rax+19],0
je        near ptr M01_L31
mov       eax,r14d
mov       edx,[r15+8]
cmp       rdx,rax
seta      al
movzx     eax,al
M01_L18
 
jmp       short M01_L16
M01_L19
 
mov       rcx,rbp
call      qword ptr [7FF9F5D26658]; System.RuntimeType.InitializeCache()
jmp       near ptr M01_L09
M01_L20
 
xor       ecx,ecx
jmp       short M01_L12
mov       rcx,offset MT_System.Char
cmp       [rsi],rcx
je        short M01_L21
mov       rdx,rsi
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
M01_L21
 
movzx     edx,word ptr [rsi+8]
mov       rcx,rbx
call      qword ptr [7FF9F6A2CD68]
jmp       short M01_L16
M01_L22
 
cmp       edi,0A
ja        near ptr M01_L36
mov       edx,edi
lea       rcx,[7FF9F693C530]
mov       ecx,[rcx+rdx*4]
lea       rax,[M01_L00]
add       rcx,rax
jmp       rcx
M01_L23
 
xor       edi,edi
jmp       near ptr M01_L10
mov       rdx,rsi
mov       rcx,offset MT_System.SByte
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A2CD50]
jmp       near ptr M01_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Byte
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A2CD50]
jmp       near ptr M01_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Int16
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A2CD38]
jmp       near ptr M01_L16
mov       rdx,rsi
mov       rcx,offset MT_System.UInt16
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A2CD38]
jmp       near ptr M01_L16
M01_L24
 
mov       ecx,2E5
mov       rdx,7FF9F5C84000
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FF9F60666E8]
int       3
M01_L25
 
mov       rcx,rdi
mov       rdx,rbx
call      System.RuntimeTypeHandle.IsEquivalentTo(System.RuntimeType, System.RuntimeType)
test      eax,eax
jne       near ptr M01_L05
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F638CD98]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbx
call      qword ptr [7FF9F638C768]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F5DDF708]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L26
 
call      qword ptr [7FF9F5D27138]
int       3
M01_L27
 
mov       rcx,rbx
call      qword ptr [7FF9F5D24918]; System.Enum.GetNamesNoCopy(System.RuntimeType)
mov       r8,rsi
mov       rcx,offset MT_System.String
cmp       [r8],rcx
je        short M01_L28
mov       rdx,rsi
call      qword ptr [7FF9F5DD43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M01_L28
 
mov       rdx,rax
mov       rcx,offset MD_System.Array.IndexOf[[System.String, System.Private.CoreLib]](System.String[], System.String)
call      qword ptr [7FF9F689D980]
not       eax
shr       eax,1F
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L29
 
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63B5170]
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F6066718]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L30
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F638CDF8]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbp
call      qword ptr [7FF9F638C768]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F5DDF708]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L31
 
test      r15,r15
jne       short M01_L32
xor       ecx,ecx
xor       r8d,r8d
jmp       short M01_L33
M01_L32
 
lea       rcx,[r15+10]
mov       r8d,[r15+8]
M01_L33
 
cmp       dword ptr [r15+8],20
jle       short M01_L34
mov       edx,r8d
mov       r8d,r14d
call      qword ptr [7FF9F6A2EAC0]
jmp       short M01_L35
M01_L34
 
mov       edx,r14d
call      qword ptr [7FF9F6A2EF88]; System.SpanHelpers.NonPackedIndexOfValueType[[System.Int32, System.Private.CoreLib],[System.SpanHelpers+DontNegate`1[[System.Int32, System.Private.CoreLib]], System.Private.CoreLib]](Int32 ByRef, Int32, Int32)
M01_L35
 
not       eax
shr       eax,1F
jmp       near ptr M01_L18
mov       rdx,rsi
mov       rcx,offset MT_System.UInt32
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       edx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F689D9B0]; System.Enum.IsDefinedPrimitive[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, UInt32)
jmp       near ptr M01_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Int64
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A2C630]
jmp       near ptr M01_L16
mov       rdx,rsi
mov       rcx,offset MT_System.UInt64
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A2C630]
jmp       near ptr M01_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Single
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovss    xmm1,dword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A27DB0]
jmp       near ptr M01_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Double
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovsd    xmm1,qword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A27D98]
jmp       near ptr M01_L16
M01_L36
 
mov       rcx,1B93DF64010
cmp       rbp,rcx
je        short M01_L38
mov       rcx,1B93DF66560
cmp       rbp,rcx
je        short M01_L37
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63B5170]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F6066718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L37
 
mov       rdx,rsi
mov       rcx,offset MT_System.UIntPtr
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A27690]
jmp       short M01_L39
M01_L38
 
mov       rdx,rsi
mov       rcx,offset MT_System.IntPtr
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A27690]
M01_L39
 
movzx     eax,al
jmp       near ptr M01_L16
M01_L40
 
mov       r15,rbp
mov       rcx,r15
call      qword ptr [7FF9F5D26AA8]; System.RuntimeType.get_IsActualEnum()
test      eax,eax
je        short M01_L41
mov       rcx,rbp
call      qword ptr [7FF9F5D1A728]; System.RuntimeType.GetEnumUnderlyingType()
mov       r15,rax
test      r15,r15
je        short M01_L41
mov       rcx,offset MT_System.RuntimeType
cmp       [r15],rcx
je        short M01_L41
mov       rdx,rax
call      qword ptr [7FF9F5DD43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M01_L41
 
mov       rcx,1B93DF66498
cmp       r15,rcx
jne       short M01_L42
mov       edi,5
jmp       near ptr M01_L57
M01_L42
 
mov       rcx,1B93DF64198
cmp       r15,rcx
jne       short M01_L43
mov       edi,6
jmp       near ptr M01_L57
M01_L43
 
mov       rcx,1B93DF664C0
cmp       r15,rcx
jne       short M01_L44
mov       edi,7
jmp       near ptr M01_L57
M01_L44
 
mov       rcx,1B93DF64038
cmp       r15,rcx
jne       short M01_L45
mov       edi,8
jmp       near ptr M01_L57
M01_L45
 
mov       rcx,1B93DF64248
cmp       r15,rcx
jne       short M01_L46
mov       edi,9
jmp       near ptr M01_L57
M01_L46
 
mov       rcx,1B93DF63F48
cmp       r15,rcx
jne       short M01_L47
mov       edi,0A
jmp       near ptr M01_L57
M01_L47
 
mov       rcx,1B93DF664E8
cmp       r15,rcx
jne       short M01_L48
mov       edi,0B
jmp       near ptr M01_L57
M01_L48
 
mov       rcx,1B93DF63D90
cmp       r15,rcx
jne       short M01_L49
mov       edi,0C
jmp       near ptr M01_L57
M01_L49
 
mov       rcx,1B93DF66448
cmp       r15,rcx
jne       short M01_L50
mov       edi,3
jmp       near ptr M01_L57
M01_L50
 
mov       rcx,1B93DF66470
cmp       r15,rcx
jne       short M01_L51
mov       edi,4
jmp       near ptr M01_L57
M01_L51
 
mov       rcx,1B93DF66510
cmp       r15,rcx
jne       short M01_L52
mov       edi,0D
jmp       short M01_L57
M01_L52
 
mov       rcx,1B93DF66538
cmp       r15,rcx
jne       short M01_L53
mov       edi,0E
jmp       short M01_L57
M01_L53
 
mov       rcx,1B93DF671E0
cmp       r15,rcx
jne       short M01_L54
mov       edi,0F
jmp       short M01_L57
M01_L54
 
mov       rcx,1B93DF63C08
cmp       r15,rcx
jne       short M01_L55
mov       edi,10
jmp       short M01_L57
M01_L55
 
mov       rcx,1B93DF60020
cmp       r15,rcx
jne       short M01_L56
mov       edi,12
jmp       short M01_L57
M01_L56
 
mov       rcx,1B93DF753E0
mov       edi,1
mov       eax,2
cmp       r15,rcx
cmove     edi,eax
M01_L57
 
cmp       qword ptr [rbp+10],0
je        short M01_L58
mov       rcx,[rbp+10]
mov       rax,[rcx]
test      rax,rax
je        short M01_L58
jmp       short M01_L59
M01_L58
 
mov       rcx,rbp
call      qword ptr [7FF9F5D26658]; System.RuntimeType.InitializeCache()
M01_L59
 
mov       [rax+90],edi
jmp       near ptr M01_L10
M01_L60
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,98
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
vmovdqa   xmmword ptr [rbp+20],xmm4
vmovdqa   xmmword ptr [rbp+30],xmm4
vmovdqa   xmmword ptr [rbp+40],xmm4
vmovdqa   xmmword ptr [rbp+50],xmm4
mov       [rbp+60],rax
mov       rax,0CB8E64D94E71
mov       [rbp],rax
mov       rsi,rcx
mov       rbx,rdx
mov       edi,r8d
mov       r14d,r9d
test      edi,edi
jl        near ptr M02_L06
test      r14d,0FFFFFFFC
jne       near ptr M02_L07
M02_L00
 
cmp       edi,1
jle       near ptr M02_L08
mov       r15d,[rsi+8]
test      r15d,r15d
je        near ptr M02_L08
cmp       dword ptr [rbx+8],0
je        near ptr M02_L10
M02_L01
 
test      [rsp],esp
sub       rsp,200
lea       rcx,[rsp+30]
mov       [rbp+58],rcx
mov       dword ptr [rbp+60],80
xor       ecx,ecx
mov       [rbp+48],rcx
mov       [rbp+50],ecx
lea       rcx,[rsi+0C]
mov       [rbp+38],rcx
mov       [rbp+40],r15d
vmovdqu   xmm0,xmmword ptr [rbx]
vmovdqu   xmmword ptr [rbp+28],xmm0
lea       rcx,[rbp+38]
lea       rdx,[rbp+28]
lea       r8,[rbp+48]
call      qword ptr [7FF9F5DD71B0]; System.String.MakeSeparatorListAny(System.ReadOnlySpan`1, System.ReadOnlySpan`1, System.Collections.Generic.ValueListBuilder`1 ByRef)
mov       eax,[rbp+50]
cmp       eax,[rbp+60]
ja        near ptr M02_L11
mov       r10,[rbp+58]
test      eax,eax
je        near ptr M02_L12
test      r14d,r14d
je        near ptr M02_L05
xor       ecx,ecx
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],rcx
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       [rsp+28],r14d
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DD7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       rbx,rax
M02_L02
 
mov       rdx,[rbp+48]
test      rdx,rdx
je        short M02_L03
xor       ecx,ecx
mov       [rbp+48],rcx
mov       rcx,178AC001F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65D5180]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M02_L03
 
mov       rax,rbx
mov       rcx,0CB8E64D94E71
cmp       [rbp],rcx
je        short M02_L04
call      CORINFO_HELP_FAIL_FAST
M02_L04
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M02_L05
 
xor       r14d,r14d
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],r14
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DD7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       rbx,rax
jmp       short M02_L02
M02_L06
 
mov       ecx,1C7
mov       rdx,7FF9F5C84000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,edi
call      qword ptr [7FF9F68C47F8]
int       3
M02_L07
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F603ECB8]
int       3
M02_L08
 
mov       rcx,rsi
mov       edx,r14d
mov       r8d,edi
call      qword ptr [7FF9F5DD7150]; System.String.CreateSplitArrayOfThisAsSoleValue(System.StringSplitOptions, Int32)
mov       rcx,0CB8E64D94E71
cmp       [rbp],rcx
je        short M02_L09
call      CORINFO_HELP_FAIL_FAST
M02_L09
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M02_L10
 
cmp       r15d,edi
jge       near ptr M02_L01
and       r14d,0FFFFFFFD
jmp       near ptr M02_L01
M02_L11
 
call      qword ptr [7FF9F603E9D0]
int       3
M02_L12
 
mov       edi,1
jmp       near ptr M02_L00
 
System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
sub       rsp,28
movzx     ecx,cx
call      qword ptr [7FFA534A7370]; Precode of System.Globalization.CharUnicodeInfo.GetCategoryCasingTableOffsetNoBoundsChecks(UInt32)
mov       rcx,[7FFA534C0750]
cmp       byte ptr [rcx+rax],0
setl      al
movzx     eax,al
add       rsp,28
ret
 
System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,edx
mov       edi,[rbx+8]
lea       ebp,[rdi-1]
mov       r14d,ebp
xor       r15d,r15d
test      sil,1
je        short M04_L03
xor       r15d,r15d
test      edi,edi
jle       short M04_L03
M04_L00
 
mov       ecx,r15d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L01
mov       rax,[7FFA534C0728]
test      byte ptr [rax+rcx],80
je        short M04_L03
jmp       short M04_L02
M04_L01
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L03
M04_L02
 
inc       r15d
cmp       edi,r15d
jg        short M04_L00
M04_L03
 
test      sil,2
je        near ptr M04_L10
mov       r14d,ebp
cmp       r14d,r15d
jl        short M04_L10
mov       ecx,r14d
or        ecx,r15d
jl        short M04_L07
cmp       edi,r14d
jle       short M04_L07
M04_L04
 
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L05
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L06
M04_L05
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L06
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L04
jmp       short M04_L10
M04_L07
 
cmp       r14d,edi
jae       short M04_L14
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L08
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L09
M04_L08
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L09
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L07
M04_L10
 
mov       r8d,r14d
sub       r8d,r15d
inc       r8d
cmp       edi,r8d
jne       short M04_L12
mov       rax,rbx
M04_L11
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L12
 
test      r8d,r8d
je        short M04_L13
mov       rcx,rbx
mov       edx,r15d
call      qword ptr [7FFA534A34A0]; Precode of System.String.InternalSubString(Int32, Int32)
jmp       short M04_L11
M04_L13
 
mov       rax,[7FFA534C08A0]
mov       rax,[rax]
jmp       short M04_L11
M04_L14
 
call      qword ptr [7FFA53493D20]; CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.SplitWithRemoveEmptyEntries()
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,48
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
xor       eax,eax
mov       [rbp-40],rax
mov       [rbp-60],rsp
mov       rbx,rcx
mov       rsi,[rbx+298]
test      rsi,rsi
je        short M00_L00
xor       ecx,ecx
cmp       dword ptr [rsi+8],0
sete      cl
test      ecx,ecx
sete      cl
movzx     ecx,cl
cmp       dword ptr [rsi+8],0
jne       short M00_L01
jmp       short M00_L01
M00_L00
 
xor       ecx,ecx
M00_L01
 
test      ecx,ecx
je        near ptr M00_L23
cmp       dword ptr [rsi+8],0
je        short M00_L05
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       short M00_L02
mov       ecx,ecx
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L25
jmp       short M00_L03
M00_L02
 
call      qword ptr [7FF9F673E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L25
M00_L03
 
mov       ecx,[rsi+8]
dec       ecx
cmp       ecx,[rsi+8]
jae       near ptr M00_L31
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L04
mov       ecx,ecx
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L25
jmp       short M00_L05
M00_L04
 
call      qword ptr [7FF9F673E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L25
M00_L05
 
mov       rcx,offset MT_System.StringSplitOptions
call      CORINFO_HELP_NEWSFAST
mov       dword ptr [rax+8],1
mov       rdx,rax
mov       rcx,3211A2677F8
cmp       [rcx],ecx
call      qword ptr [7FF9F5D2A770]; System.RuntimeType.IsEnumDefined(System.Object)
test      eax,eax
je        near ptr M00_L26
mov       rcx,offset MT_System.Char[]
mov       edx,1
call      CORINFO_HELP_NEWARR_1_VC
mov       word ptr [rax+10],2E
cmp       [rsi],sil
add       rax,10
mov       rcx,rsi
mov       [rbp-50],rax
mov       dword ptr [rbp-48],1
lea       rdx,[rbp-50]
mov       r9d,1
mov       r8d,7FFFFFFF
call      qword ptr [7FF9F5DE70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
mov       rsi,rax
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyCollection`1[[System.String, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
test      rsi,rsi
je        near ptr M00_L28
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+8]
mov       r11,7FF9F5CA0FC0
call      qword ptr [r11]
test      eax,eax
je        near ptr M00_L29
mov       rcx,[rdi+8]
mov       r11,7FF9F5CA0FC8
call      qword ptr [r11]
mov       rsi,rax
M00_L06
 
mov       [rbp-58],rsi
test      rsi,rsi
je        near ptr M00_L15
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
jne       near ptr M00_L15
jmp       short M00_L09
M00_L07
 
mov       r10,rsi
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       near ptr M00_L18
mov       r13,[r10+10]
cmp       r9d,[r13+8]
jae       short M00_L10
mov       ecx,r9d
mov       r12,[r13+rcx*8+10]
M00_L08
 
mov       [rbp-40],r12
mov       r12,[rbx+18]
mov       rdx,[rbp-40]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
M00_L09
 
cmp       rdi,r14
jne       short M00_L12
mov       rax,rsi
mov       r8d,[rax+8]
inc       r8d
mov       r15d,[rax+0C]
cmp       r8d,r15d
jae       short M00_L11
mov       [rax+8],r8d
jmp       short M00_L07
M00_L10
 
call      CORINFO_HELP_RNGCHKFAIL
M00_L11
 
mov       [rax+8],r15d
jmp       near ptr M00_L21
M00_L12
 
mov       rcx,rsi
mov       r11,7FF9F5CA0FA8
call      qword ptr [r11]
test      eax,eax
jne       near ptr M00_L19
jmp       near ptr M00_L21
M00_L13
 
mov       r10,rsi
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       short M00_L18
mov       r13,[r10+10]
cmp       r9d,[r13+8]
jae       short M00_L10
mov       ecx,r9d
mov       r12,[r13+rcx*8+10]
M00_L14
 
mov       [rbp-40],r12
mov       r12,[rbx+18]
mov       rdx,[rbp-40]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
M00_L15
 
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
jne       short M00_L20
mov       rax,rsi
mov       r8d,[rax+8]
inc       r8d
mov       r15d,[rax+0C]
cmp       r8d,r15d
jae       short M00_L16
mov       [rax+8],r8d
jmp       short M00_L13
M00_L16
 
mov       [rax+8],r15d
jmp       short M00_L21
M00_L17
 
mov       rcx,rsi
mov       r11,7FF9F5CA0FB0
call      qword ptr [r11]
mov       r12,rax
jmp       short M00_L14
M00_L18
 
mov       ecx,[r10+8]
call      qword ptr [7FF9F604EFD0]
int       3
M00_L19
 
mov       rcx,rsi
mov       r11,7FF9F5CA0FB0
call      qword ptr [r11]
mov       r12,rax
jmp       near ptr M00_L08
M00_L20
 
mov       rcx,rsi
mov       r11,7FF9F5CA0FA8
call      qword ptr [r11]
test      eax,eax
jne       short M00_L17
M00_L21
 
cmp       rdi,r14
jne       near ptr M00_L30
M00_L22
 
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M00_L23
 
call      qword ptr [7FF9F6365368]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L24
call      qword ptr [7FF9F63650B0]
mov       rbx,rax
M00_L24
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,3211A258468
mov       r8,rbx
call      qword ptr [7FF9F6076670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L25
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DE73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L05
M00_L26
 
call      qword ptr [7FF9F6365170]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L27
call      qword ptr [7FF9F63650C8]
mov       rbx,rax
M00_L27
 
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       rcx,rdi
mov       rdx,3211A259EE0
mov       r8,rbx
call      qword ptr [7FF9F5E9D470]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M00_L28
 
mov       ecx,14
call      qword ptr [7FF9F604ED00]
int       3
M00_L29
 
mov       rcx,7FF9F5D25120
mov       edx,20
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,2E088402000
mov       rsi,[rcx]
jmp       near ptr M00_L06
M00_L30
 
mov       rcx,rsi
mov       r11,7FF9F5CA0FB8
call      qword ptr [r11]
jmp       near ptr M00_L22
M00_L31
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M00_L32
mov       rsi,[rbp-58]
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
je        short M00_L32
mov       rcx,rsi
mov       r11,7FF9F5CA0FB8
call      qword ptr [r11]
M00_L32
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
sub       rsp,28
movzx     ecx,cx
call      qword ptr [7FFA534A7370]; Precode of System.Globalization.CharUnicodeInfo.GetCategoryCasingTableOffsetNoBoundsChecks(UInt32)
mov       rcx,[7FFA534C0750]
cmp       byte ptr [rcx+rax],0
setl      al
movzx     eax,al
add       rsp,28
ret
 
System.RuntimeType.IsEnumDefined(System.Object)
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,20
vzeroupper
mov       rbx,rcx
mov       rsi,rdx
M02_L00
 
test      rsi,rsi
je        near ptr M02_L30
mov       rcx,[rbx+18]
mov       rax,rcx
test      cl,2
jne       short M02_L01
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M02_L02
M02_L01
 
xor       ecx,ecx
M02_L02
 
movzx     ecx,cl
test      ecx,ecx
je        near ptr M02_L32
mov       rcx,rsi
call      System.Object.GetType()
mov       rdi,rax
mov       rcx,[rdi+18]
mov       rax,rcx
test      cl,2
jne       short M02_L03
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M02_L04
M02_L03
 
xor       ecx,ecx
M02_L04
 
movzx     ecx,cl
test      ecx,ecx
je        short M02_L08
cmp       rbx,rdi
jne       near ptr M02_L31
M02_L05
 
mov       rcx,[rdi+18]
mov       rax,rcx
mov       rdx,rax
test      al,2
jne       short M02_L06
mov       rax,[rdx+10]
mov       rdx,offset MT_System.Enum
cmp       rax,rdx
sete      al
movzx     eax,al
jmp       short M02_L07
M02_L06
 
xor       eax,eax
M02_L07
 
movzx     eax,al
test      eax,eax
je        near ptr M02_L32
mov       rax,2E0884000A0
mov       rbp,[rax]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M02_L58
mov       ecx,eax
mov       rcx,[rbp+rcx*8+10]
mov       rdi,rcx
M02_L08
 
mov       rcx,3211A250020
cmp       rdi,rcx
je        near ptr M02_L33
mov       rcx,rdi
call      qword ptr [7FF9F5D36070]; System.Type.IsIntegerType(System.Type)
test      eax,eax
je        near ptr M02_L35
mov       rcx,2E0884000A0
mov       rbp,[rcx]
mov       rcx,[rbx+18]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M02_L58
mov       ecx,eax
mov       rbp,[rbp+rcx*8+10]
cmp       rbp,rdi
jne       near ptr M02_L36
test      rbp,rbp
je        near ptr M02_L20
mov       rcx,[rbp+10]
test      rcx,rcx
je        near ptr M02_L16
mov       rax,[rcx]
test      rax,rax
je        near ptr M02_L16
M02_L09
 
mov       r14d,[rax+90]
test      r14d,r14d
je        near ptr M02_L37
M02_L10
 
add       r14d,0FFFFFFFC
cmp       r14d,5
jne       near ptr M02_L57
mov       rdx,offset MT_System.Int32
cmp       [rsi],rdx
je        short M02_L11
mov       rdx,rsi
mov       rcx,offset MT_System.Int32
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
M02_L11
 
mov       r15d,[rsi+8]
mov       rcx,[rbx+10]
test      rcx,rcx
je        short M02_L19
mov       rcx,[rcx]
M02_L12
 
test      rcx,rcx
je        short M02_L15
mov       rax,[rcx+78]
M02_L13
 
test      rax,rax
je        short M02_L14
mov       rcx,offset MT_System.Enum+EnumInfo`1[[System.UInt32, System.Private.CoreLib]]
cmp       [rax],rcx
je        short M02_L17
M02_L14
 
mov       rcx,rbx
xor       edx,edx
call      qword ptr [7FF9F6207528]; System.Enum.g__InitializeEnumInfo|7_0[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, Boolean)
jmp       short M02_L17
M02_L15
 
xor       eax,eax
jmp       short M02_L13
M02_L16
 
mov       rcx,rbp
call      qword ptr [7FF9F5D36658]; System.RuntimeType.InitializeCache()
jmp       near ptr M02_L09
M02_L17
 
mov       r13,[rax+8]
cmp       byte ptr [rax+19],0
je        near ptr M02_L21
mov       eax,r15d
mov       ecx,[r13+8]
cmp       rcx,rax
seta      al
movzx     eax,al
M02_L18
 
add       rsp,20
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
ret
M02_L19
 
xor       ecx,ecx
jmp       short M02_L12
M02_L20
 
xor       r14d,r14d
jmp       near ptr M02_L10
mov       rdx,rsi
mov       rcx,offset MT_System.SByte
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A3CD50]
jmp       short M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.Byte
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A3CD50]
jmp       short M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.Int16
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A3CD38]
jmp       short M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.UInt16
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A3CD38]
jmp       near ptr M02_L18
M02_L21
 
test      r13,r13
jne       short M02_L22
xor       ecx,ecx
xor       r8d,r8d
jmp       short M02_L23
M02_L22
 
lea       rcx,[r13+10]
mov       r8d,[r13+8]
M02_L23
 
cmp       dword ptr [r13+8],20
jle       short M02_L24
mov       edx,r8d
mov       r8d,r15d
call      qword ptr [7FF9F6A3EAC0]
jmp       short M02_L25
M02_L24
 
mov       edx,r15d
call      qword ptr [7FF9F6A3EF88]; System.SpanHelpers.NonPackedIndexOfValueType[[System.Int32, System.Private.CoreLib],[System.SpanHelpers+DontNegate`1[[System.Int32, System.Private.CoreLib]], System.Private.CoreLib]](Int32 ByRef, Int32, Int32)
M02_L25
 
not       eax
shr       eax,1F
jmp       near ptr M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.UInt32
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       edx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F68AD290]; System.Enum.IsDefinedPrimitive[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, UInt32)
jmp       near ptr M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.Int64
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A3C630]
jmp       near ptr M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.UInt64
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A3C630]
jmp       near ptr M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.Single
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovss    xmm1,dword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A37DE0]
jmp       near ptr M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.Double
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovsd    xmm1,qword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A37DC8]
jmp       near ptr M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.Char
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A3CD68]
jmp       near ptr M02_L18
M02_L26
 
mov       rcx,3211A254010
cmp       rbp,rcx
je        short M02_L28
mov       rcx,3211A256560
cmp       rbp,rcx
je        short M02_L27
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63C5170]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F6076718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L27
 
mov       rdx,rsi
mov       rcx,offset MT_System.UIntPtr
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A376C0]
jmp       short M02_L29
M02_L28
 
mov       rdx,rsi
mov       rcx,offset MT_System.IntPtr
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A376C0]
M02_L29
 
movzx     eax,al
jmp       near ptr M02_L18
M02_L30
 
mov       ecx,2E5
mov       rdx,7FF9F5C94000
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FF9F60766E8]
int       3
M02_L31
 
mov       rcx,rdi
mov       rdx,rbx
call      System.RuntimeTypeHandle.IsEquivalentTo(System.RuntimeType, System.RuntimeType)
test      eax,eax
jne       near ptr M02_L05
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F639CD98]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbx
call      qword ptr [7FF9F639C768]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F5DEF708]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L32
 
call      qword ptr [7FF9F5D37138]
int       3
M02_L33
 
mov       rcx,rbx
call      qword ptr [7FF9F5D34918]; System.Enum.GetNamesNoCopy(System.RuntimeType)
mov       r8,rsi
mov       rcx,offset MT_System.String
cmp       [r8],rcx
je        short M02_L34
mov       rdx,rsi
call      qword ptr [7FF9F5DE43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M02_L34
 
mov       rdx,rax
mov       rcx,offset MD_System.Array.IndexOf[[System.String, System.Private.CoreLib]](System.String[], System.String)
call      qword ptr [7FF9F68AD260]
not       eax
shr       eax,1F
add       rsp,20
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
ret
M02_L35
 
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63C5170]
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F6076718]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M02_L36
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
call      qword ptr [7FF9F639CDF8]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbp
call      qword ptr [7FF9F639C768]
mov       rdx,rax
mov       rcx,r14
call      qword ptr [7FF9F5DEF708]
mov       rcx,r14
call      CORINFO_HELP_THROW
M02_L37
 
mov       r13,rbp
mov       rcx,r13
call      qword ptr [7FF9F5D36AA8]; System.RuntimeType.get_IsActualEnum()
test      eax,eax
je        short M02_L38
mov       rcx,rbp
call      qword ptr [7FF9F5D2A728]; System.RuntimeType.GetEnumUnderlyingType()
mov       r13,rax
test      r13,r13
je        short M02_L38
mov       rcx,offset MT_System.RuntimeType
cmp       [r13],rcx
je        short M02_L38
mov       rdx,rax
call      qword ptr [7FF9F5DE43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M02_L38
 
mov       rcx,3211A256498
cmp       r13,rcx
jne       short M02_L39
mov       r14d,5
jmp       near ptr M02_L54
M02_L39
 
mov       rcx,3211A254198
cmp       r13,rcx
jne       short M02_L40
mov       r14d,6
jmp       near ptr M02_L54
M02_L40
 
mov       rcx,3211A2564C0
cmp       r13,rcx
jne       short M02_L41
mov       r14d,7
jmp       near ptr M02_L54
M02_L41
 
mov       rcx,3211A254038
cmp       r13,rcx
jne       short M02_L42
mov       r14d,8
jmp       near ptr M02_L54
M02_L42
 
mov       rcx,3211A254248
cmp       r13,rcx
jne       short M02_L43
mov       r14d,9
jmp       near ptr M02_L54
M02_L43
 
mov       rcx,3211A253F48
cmp       r13,rcx
jne       short M02_L44
mov       r14d,0A
jmp       near ptr M02_L54
M02_L44
 
mov       rcx,3211A2564E8
cmp       r13,rcx
jne       short M02_L45
mov       r14d,0B
jmp       near ptr M02_L54
M02_L45
 
mov       rcx,3211A253D90
cmp       r13,rcx
jne       short M02_L46
mov       r14d,0C
jmp       near ptr M02_L54
M02_L46
 
mov       rcx,3211A256448
cmp       r13,rcx
jne       short M02_L47
mov       r14d,3
jmp       near ptr M02_L54
M02_L47
 
mov       rcx,3211A256470
cmp       r13,rcx
jne       short M02_L48
mov       r14d,4
jmp       near ptr M02_L54
M02_L48
 
mov       rcx,3211A256510
cmp       r13,rcx
jne       short M02_L49
mov       r14d,0D
jmp       short M02_L54
M02_L49
 
mov       rcx,3211A256538
cmp       r13,rcx
jne       short M02_L50
mov       r14d,0E
jmp       short M02_L54
M02_L50
 
mov       rcx,3211A2571E0
cmp       r13,rcx
jne       short M02_L51
mov       r14d,0F
jmp       short M02_L54
M02_L51
 
mov       rcx,3211A253C08
cmp       r13,rcx
jne       short M02_L52
mov       r14d,10
jmp       short M02_L54
M02_L52
 
mov       rcx,3211A250020
cmp       r13,rcx
jne       short M02_L53
mov       r14d,12
jmp       short M02_L54
M02_L53
 
mov       rcx,3211A2653E0
mov       r14d,1
mov       eax,2
cmp       r13,rcx
cmove     r14d,eax
M02_L54
 
cmp       qword ptr [rbp+10],0
je        short M02_L55
mov       rcx,[rbp+10]
mov       rax,[rcx]
test      rax,rax
je        short M02_L55
jmp       short M02_L56
M02_L55
 
mov       rcx,rbp
call      qword ptr [7FF9F5D36658]; System.RuntimeType.InitializeCache()
M02_L56
 
mov       [rax+90],r14d
jmp       near ptr M02_L10
M02_L57
 
cmp       r14d,0A
ja        near ptr M02_L26
mov       edx,r14d
lea       rcx,[7FF9F694B7C0]
mov       ecx,[rcx+rdx*4]
lea       rax,[M02_L00]
add       rcx,rax
jmp       rcx
M02_L58
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,98
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
vmovdqa   xmmword ptr [rbp+20],xmm4
vmovdqa   xmmword ptr [rbp+30],xmm4
vmovdqa   xmmword ptr [rbp+40],xmm4
vmovdqa   xmmword ptr [rbp+50],xmm4
mov       [rbp+60],rax
mov       rax,0B28017CE023D
mov       [rbp],rax
mov       rsi,rcx
mov       rbx,rdx
mov       edi,r8d
mov       r14d,r9d
test      edi,edi
jl        near ptr M03_L06
test      r14d,0FFFFFFFC
jne       near ptr M03_L07
M03_L00
 
cmp       edi,1
jle       near ptr M03_L08
mov       r15d,[rsi+8]
test      r15d,r15d
je        near ptr M03_L08
cmp       dword ptr [rbx+8],0
je        near ptr M03_L10
M03_L01
 
test      [rsp],esp
sub       rsp,200
lea       rcx,[rsp+30]
mov       [rbp+58],rcx
mov       dword ptr [rbp+60],80
xor       ecx,ecx
mov       [rbp+48],rcx
mov       [rbp+50],ecx
lea       rcx,[rsi+0C]
mov       [rbp+38],rcx
mov       [rbp+40],r15d
vmovdqu   xmm0,xmmword ptr [rbx]
vmovdqu   xmmword ptr [rbp+28],xmm0
lea       rcx,[rbp+38]
lea       rdx,[rbp+28]
lea       r8,[rbp+48]
call      qword ptr [7FF9F5DE71B0]; System.String.MakeSeparatorListAny(System.ReadOnlySpan`1, System.ReadOnlySpan`1, System.Collections.Generic.ValueListBuilder`1 ByRef)
mov       eax,[rbp+50]
cmp       eax,[rbp+60]
ja        near ptr M03_L11
mov       r10,[rbp+58]
test      eax,eax
je        near ptr M03_L12
test      r14d,r14d
je        near ptr M03_L05
xor       ecx,ecx
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],rcx
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       [rsp+28],r14d
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DE7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       rbx,rax
M03_L02
 
mov       rdx,[rbp+48]
test      rdx,rdx
je        short M03_L03
xor       ecx,ecx
mov       [rbp+48],rcx
mov       rcx,2E088401F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65E4BE8]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M03_L03
 
mov       rax,rbx
mov       rcx,0B28017CE023D
cmp       [rbp],rcx
je        short M03_L04
call      CORINFO_HELP_FAIL_FAST
M03_L04
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L05
 
xor       r14d,r14d
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],r14
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DE7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       rbx,rax
jmp       short M03_L02
M03_L06
 
mov       ecx,1C7
mov       rdx,7FF9F5C94000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,edi
call      qword ptr [7FF9F68D4408]
int       3
M03_L07
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F604ECB8]
int       3
M03_L08
 
mov       rcx,rsi
mov       edx,r14d
mov       r8d,edi
call      qword ptr [7FF9F5DE7150]; System.String.CreateSplitArrayOfThisAsSoleValue(System.StringSplitOptions, Int32)
mov       rcx,0B28017CE023D
cmp       [rbp],rcx
je        short M03_L09
call      CORINFO_HELP_FAIL_FAST
M03_L09
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L10
 
cmp       r15d,edi
jge       near ptr M03_L01
and       r14d,0FFFFFFFD
jmp       near ptr M03_L01
M03_L11
 
call      qword ptr [7FF9F604E9D0]
int       3
M03_L12
 
mov       edi,1
jmp       near ptr M03_L00
 
System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,edx
mov       edi,[rbx+8]
lea       ebp,[rdi-1]
mov       r14d,ebp
xor       r15d,r15d
test      sil,1
je        short M04_L03
xor       r15d,r15d
test      edi,edi
jle       short M04_L03
M04_L00
 
mov       ecx,r15d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L01
mov       rax,[7FFA534C0728]
test      byte ptr [rax+rcx],80
je        short M04_L03
jmp       short M04_L02
M04_L01
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L03
M04_L02
 
inc       r15d
cmp       edi,r15d
jg        short M04_L00
M04_L03
 
test      sil,2
je        near ptr M04_L10
mov       r14d,ebp
cmp       r14d,r15d
jl        short M04_L10
mov       ecx,r14d
or        ecx,r15d
jl        short M04_L07
cmp       edi,r14d
jle       short M04_L07
M04_L04
 
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L05
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L06
M04_L05
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L06
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L04
jmp       short M04_L10
M04_L07
 
cmp       r14d,edi
jae       short M04_L14
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L08
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L09
M04_L08
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L09
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L07
M04_L10
 
mov       r8d,r14d
sub       r8d,r15d
inc       r8d
cmp       edi,r8d
jne       short M04_L12
mov       rax,rbx
M04_L11
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L12
 
test      r8d,r8d
je        short M04_L13
mov       rcx,rbx
mov       edx,r15d
call      qword ptr [7FFA534A34A0]; Precode of System.String.InternalSubString(Int32, Int32)
jmp       short M04_L11
M04_L13
 
mov       rax,[7FFA534C08A0]
mov       rax,[rax]
jmp       short M04_L11
M04_L14
 
call      qword ptr [7FFA53493D20]; CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.SplitWithRemoveEmptyEntries()
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,48
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
xor       eax,eax
mov       [rbp-40],rax
mov       [rbp-60],rsp
mov       rbx,rcx
mov       rsi,[rbx+298]
test      rsi,rsi
je        short M00_L00
xor       ecx,ecx
cmp       dword ptr [rsi+8],0
sete      cl
test      ecx,ecx
sete      cl
movzx     ecx,cl
cmp       dword ptr [rsi+8],0
jne       short M00_L01
jmp       short M00_L01
M00_L00
 
xor       ecx,ecx
M00_L01
 
test      ecx,ecx
je        near ptr M00_L23
cmp       dword ptr [rsi+8],0
je        short M00_L05
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       short M00_L02
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L25
jmp       short M00_L03
M00_L02
 
call      qword ptr [7FF9F672E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L25
M00_L03
 
mov       ecx,[rsi+8]
dec       ecx
cmp       ecx,[rsi+8]
jae       near ptr M00_L31
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L04
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L25
jmp       short M00_L05
M00_L04
 
call      qword ptr [7FF9F672E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L25
M00_L05
 
mov       rcx,offset MT_System.StringSplitOptions
call      CORINFO_HELP_NEWSFAST
mov       dword ptr [rax+8],1
mov       rdx,rax
mov       rcx,2487BDD77F8
cmp       [rcx],ecx
call      qword ptr [7FF9F5D1A770]; System.RuntimeType.IsEnumDefined(System.Object)
test      eax,eax
je        near ptr M00_L26
mov       rcx,offset MT_System.Char[]
mov       edx,1
call      CORINFO_HELP_NEWARR_1_VC
mov       word ptr [rax+10],2E
cmp       [rsi],sil
add       rax,10
mov       rcx,rsi
mov       [rbp-50],rax
mov       dword ptr [rbp-48],1
lea       rdx,[rbp-50]
mov       r9d,1
mov       r8d,7FFFFFFF
call      qword ptr [7FF9F5DD70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
mov       rsi,rax
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyCollection`1[[System.String, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
test      rsi,rsi
je        near ptr M00_L28
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+8]
mov       r11,7FF9F5C90FC0
call      qword ptr [r11]
test      eax,eax
je        near ptr M00_L29
mov       rcx,[rdi+8]
mov       r11,7FF9F5C90FC8
call      qword ptr [r11]
mov       rsi,rax
M00_L06
 
mov       [rbp-58],rsi
test      rsi,rsi
je        near ptr M00_L15
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
jne       near ptr M00_L15
jmp       short M00_L09
M00_L07
 
mov       r10,rsi
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       near ptr M00_L18
mov       r13,[r10+10]
cmp       r9d,[r13+8]
jae       short M00_L10
mov       ecx,r9d
mov       r12,[r13+rcx*8+10]
M00_L08
 
mov       [rbp-40],r12
mov       r12,[rbx+18]
mov       rdx,[rbp-40]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
M00_L09
 
cmp       rdi,r14
jne       short M00_L12
mov       rax,rsi
mov       r8d,[rax+8]
inc       r8d
mov       r15d,[rax+0C]
cmp       r8d,r15d
jae       short M00_L11
mov       [rax+8],r8d
jmp       short M00_L07
M00_L10
 
call      CORINFO_HELP_RNGCHKFAIL
M00_L11
 
mov       [rax+8],r15d
jmp       near ptr M00_L21
M00_L12
 
mov       rcx,rsi
mov       r11,7FF9F5C90FA8
call      qword ptr [r11]
test      eax,eax
jne       near ptr M00_L19
jmp       near ptr M00_L21
M00_L13
 
mov       r10,rsi
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       short M00_L18
mov       r13,[r10+10]
cmp       r9d,[r13+8]
jae       short M00_L10
mov       ecx,r9d
mov       r12,[r13+rcx*8+10]
M00_L14
 
mov       [rbp-40],r12
mov       r12,[rbx+18]
mov       rdx,[rbp-40]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
M00_L15
 
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
jne       short M00_L20
mov       rax,rsi
mov       r8d,[rax+8]
inc       r8d
mov       r15d,[rax+0C]
cmp       r8d,r15d
jae       short M00_L16
mov       [rax+8],r8d
jmp       short M00_L13
M00_L16
 
mov       [rax+8],r15d
jmp       short M00_L21
M00_L17
 
mov       rcx,rsi
mov       r11,7FF9F5C90FB0
call      qword ptr [r11]
mov       r12,rax
jmp       short M00_L14
M00_L18
 
mov       ecx,[r10+8]
call      qword ptr [7FF9F603EFD0]
int       3
M00_L19
 
mov       rcx,rsi
mov       r11,7FF9F5C90FB0
call      qword ptr [r11]
mov       r12,rax
jmp       near ptr M00_L08
M00_L20
 
mov       rcx,rsi
mov       r11,7FF9F5C90FA8
call      qword ptr [r11]
test      eax,eax
jne       short M00_L17
M00_L21
 
cmp       rdi,r14
jne       near ptr M00_L30
M00_L22
 
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M00_L23
 
call      qword ptr [7FF9F6355368]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L24
call      qword ptr [7FF9F63550B0]
mov       rbx,rax
M00_L24
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,2487BDC8468
mov       r8,rbx
call      qword ptr [7FF9F6066670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L25
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DD73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L05
M00_L26
 
call      qword ptr [7FF9F6355170]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L27
call      qword ptr [7FF9F63550C8]
mov       rbx,rax
M00_L27
 
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       rcx,rdi
mov       rdx,2487BDC9EE0
mov       r8,rbx
call      qword ptr [7FF9F5E8D470]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M00_L28
 
mov       ecx,14
call      qword ptr [7FF9F603ED00]
int       3
M00_L29
 
mov       rcx,7FF9F5D15120
mov       edx,20
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,207EA002000
mov       rsi,[rcx]
jmp       near ptr M00_L06
M00_L30
 
mov       rcx,rsi
mov       r11,7FF9F5C90FB8
call      qword ptr [r11]
jmp       near ptr M00_L22
M00_L31
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M00_L32
mov       rsi,[rbp-58]
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
je        short M00_L32
mov       rcx,rsi
mov       r11,7FF9F5C90FB8
call      qword ptr [r11]
M00_L32
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
sub       rsp,28
movzx     ecx,cx
call      qword ptr [7FFA534A7370]; Precode of System.Globalization.CharUnicodeInfo.GetCategoryCasingTableOffsetNoBoundsChecks(UInt32)
mov       rcx,[7FFA534C0750]
cmp       byte ptr [rcx+rax],0
setl      al
movzx     eax,al
add       rsp,28
ret
 
System.RuntimeType.IsEnumDefined(System.Object)
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,20
vzeroupper
mov       rbx,rcx
mov       rsi,rdx
M02_L00
 
test      rsi,rsi
je        near ptr M02_L53
mov       rcx,[rbx+18]
mov       rax,rcx
test      cl,2
jne       short M02_L01
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M02_L02
M02_L01
 
xor       ecx,ecx
M02_L02
 
movzx     ecx,cl
test      ecx,ecx
je        near ptr M02_L55
mov       rcx,rsi
call      System.Object.GetType()
mov       rdi,rax
mov       rcx,[rdi+18]
mov       rax,rcx
test      cl,2
jne       short M02_L03
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M02_L04
M02_L03
 
xor       ecx,ecx
M02_L04
 
movzx     ecx,cl
test      ecx,ecx
je        short M02_L08
cmp       rbx,rdi
jne       near ptr M02_L54
M02_L05
 
mov       rcx,[rdi+18]
mov       rax,rcx
mov       rdx,rax
test      al,2
jne       short M02_L06
mov       rax,[rdx+10]
mov       rdx,offset MT_System.Enum
cmp       rax,rdx
sete      al
movzx     eax,al
jmp       short M02_L07
M02_L06
 
xor       eax,eax
M02_L07
 
movzx     eax,al
test      eax,eax
je        near ptr M02_L55
mov       rax,207EA0000A0
mov       rbp,[rax]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M02_L62
mov       ecx,eax
mov       rcx,[rbp+rcx*8+10]
mov       rdi,rcx
M02_L08
 
mov       rcx,2487BDC0020
cmp       rdi,rcx
je        near ptr M02_L56
mov       rcx,rdi
call      qword ptr [7FF9F5D26070]; System.Type.IsIntegerType(System.Type)
test      eax,eax
je        near ptr M02_L58
mov       rcx,207EA0000A0
mov       rbp,[rcx]
mov       rcx,[rbx+18]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M02_L62
mov       ecx,eax
mov       rbp,[rbp+rcx*8+10]
cmp       rbp,rdi
jne       near ptr M02_L59
test      rbp,rbp
je        near ptr M02_L31
mov       rcx,[rbp+10]
test      rcx,rcx
je        near ptr M02_L18
mov       rax,[rcx]
test      rax,rax
je        near ptr M02_L18
M02_L09
 
mov       r14d,[rax+90]
test      r14d,r14d
je        near ptr M02_L20
M02_L10
 
add       r14d,0FFFFFFFC
cmp       r14d,5
jne       near ptr M02_L60
mov       rdx,offset MT_System.Int32
cmp       [rsi],rdx
je        short M02_L11
mov       rdx,rsi
mov       rcx,offset MT_System.Int32
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
M02_L11
 
mov       r15d,[rsi+8]
mov       rcx,[rbx+10]
test      rcx,rcx
je        short M02_L19
mov       rcx,[rcx]
M02_L12
 
test      rcx,rcx
je        short M02_L15
mov       rax,[rcx+78]
M02_L13
 
test      rax,rax
je        short M02_L14
mov       rcx,offset MT_System.Enum+EnumInfo`1[[System.UInt32, System.Private.CoreLib]]
cmp       [rax],rcx
je        short M02_L16
M02_L14
 
mov       rcx,rbx
xor       edx,edx
call      qword ptr [7FF9F61F7528]; System.Enum.g__InitializeEnumInfo|7_0[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, Boolean)
jmp       short M02_L16
M02_L15
 
xor       eax,eax
jmp       short M02_L13
M02_L16
 
mov       r13,[rax+8]
cmp       byte ptr [rax+19],0
je        near ptr M02_L44
mov       eax,r15d
mov       ecx,[r13+8]
cmp       rcx,rax
seta      al
movzx     eax,al
M02_L17
 
add       rsp,20
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
ret
M02_L18
 
mov       rcx,rbp
call      qword ptr [7FF9F5D26658]; System.RuntimeType.InitializeCache()
jmp       near ptr M02_L09
M02_L19
 
xor       ecx,ecx
jmp       short M02_L12
M02_L20
 
mov       r14,rbp
mov       rcx,r14
call      qword ptr [7FF9F5D26AA8]; System.RuntimeType.get_IsActualEnum()
test      eax,eax
jne       near ptr M02_L24
M02_L21
 
mov       rcx,2487BDC6498
cmp       r14,rcx
je        near ptr M02_L40
mov       rcx,2487BDC4198
cmp       r14,rcx
je        near ptr M02_L27
mov       rcx,2487BDC64C0
cmp       r14,rcx
je        near ptr M02_L39
mov       rcx,2487BDC4038
cmp       r14,rcx
je        near ptr M02_L36
mov       rcx,2487BDC4248
cmp       r14,rcx
je        near ptr M02_L26
mov       rcx,2487BDC3F48
cmp       r14,rcx
je        near ptr M02_L28
mov       rcx,2487BDC64E8
cmp       r14,rcx
je        near ptr M02_L35
mov       rcx,2487BDC3D90
cmp       r14,rcx
je        near ptr M02_L34
mov       rcx,2487BDC6448
cmp       r14,rcx
je        near ptr M02_L33
mov       rcx,2487BDC6470
cmp       r14,rcx
je        near ptr M02_L43
mov       rcx,2487BDC6510
cmp       r14,rcx
je        near ptr M02_L38
mov       rcx,2487BDC6538
cmp       r14,rcx
je        near ptr M02_L32
mov       rcx,2487BDC71E0
cmp       r14,rcx
je        near ptr M02_L42
mov       rcx,2487BDC3C08
cmp       r14,rcx
je        near ptr M02_L41
mov       rcx,2487BDC0020
cmp       r14,rcx
je        near ptr M02_L30
mov       rcx,2487BDD53E0
mov       r15d,1
mov       eax,2
cmp       r14,rcx
cmove     r15d,eax
M02_L22
 
mov       r14d,r15d
mov       rcx,[rbp+10]
test      rcx,rcx
je        near ptr M02_L37
mov       rax,[rcx]
test      rax,rax
je        near ptr M02_L37
M02_L23
 
mov       [rax+90],r14d
jmp       near ptr M02_L10
M02_L24
 
mov       rcx,rbp
call      qword ptr [7FF9F5D1A728]; System.RuntimeType.GetEnumUnderlyingType()
mov       r14,rax
test      r14,r14
jne       short M02_L29
M02_L25
 
jmp       near ptr M02_L21
M02_L26
 
mov       r15d,9
jmp       short M02_L22
M02_L27
 
mov       r15d,6
jmp       short M02_L22
M02_L28
 
mov       r15d,0A
jmp       short M02_L22
M02_L29
 
mov       rcx,offset MT_System.RuntimeType
cmp       [r14],rcx
jne       near ptr M02_L61
jmp       short M02_L25
M02_L30
 
mov       r15d,12
jmp       short M02_L22
M02_L31
 
xor       r14d,r14d
jmp       near ptr M02_L10
M02_L32
 
mov       r15d,0E
jmp       near ptr M02_L22
M02_L33
 
mov       r15d,3
jmp       near ptr M02_L22
M02_L34
 
mov       r15d,0C
jmp       near ptr M02_L22
M02_L35
 
mov       r15d,0B
jmp       near ptr M02_L22
M02_L36
 
mov       r15d,8
jmp       near ptr M02_L22
M02_L37
 
mov       rcx,rbp
call      qword ptr [7FF9F5D26658]; System.RuntimeType.InitializeCache()
jmp       near ptr M02_L23
M02_L38
 
mov       r15d,0D
jmp       near ptr M02_L22
M02_L39
 
mov       r15d,7
jmp       near ptr M02_L22
M02_L40
 
mov       r15d,5
jmp       near ptr M02_L22
M02_L41
 
mov       r15d,10
jmp       near ptr M02_L22
M02_L42
 
mov       r15d,0F
jmp       near ptr M02_L22
M02_L43
 
mov       r15d,4
jmp       near ptr M02_L22
mov       rdx,rsi
mov       rcx,offset MT_System.SByte
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A2CD50]
jmp       near ptr M02_L17
mov       rdx,rsi
mov       rcx,offset MT_System.Byte
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A2CD50]
jmp       near ptr M02_L17
mov       rdx,rsi
mov       rcx,offset MT_System.Int16
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A2CD38]
jmp       near ptr M02_L17
mov       rdx,rsi
mov       rcx,offset MT_System.UInt16
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A2CD38]
jmp       near ptr M02_L17
M02_L44
 
test      r13,r13
jne       short M02_L45
xor       ecx,ecx
xor       r8d,r8d
jmp       short M02_L46
M02_L45
 
lea       rcx,[r13+10]
mov       r8d,[r13+8]
M02_L46
 
cmp       dword ptr [r13+8],20
jle       short M02_L47
mov       edx,r8d
mov       r8d,r15d
call      qword ptr [7FF9F6A2EAC0]
jmp       short M02_L48
M02_L47
 
mov       edx,r15d
call      qword ptr [7FF9F6A2EF88]; System.SpanHelpers.NonPackedIndexOfValueType[[System.Int32, System.Private.CoreLib],[System.SpanHelpers+DontNegate`1[[System.Int32, System.Private.CoreLib]], System.Private.CoreLib]](Int32 ByRef, Int32, Int32)
M02_L48
 
not       eax
shr       eax,1F
jmp       near ptr M02_L17
mov       rdx,rsi
mov       rcx,offset MT_System.UInt32
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       edx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F689D9B0]; System.Enum.IsDefinedPrimitive[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, UInt32)
jmp       near ptr M02_L17
mov       rdx,rsi
mov       rcx,offset MT_System.Int64
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A2C630]
jmp       near ptr M02_L17
mov       rdx,rsi
mov       rcx,offset MT_System.UInt64
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A2C630]
jmp       near ptr M02_L17
mov       rdx,rsi
mov       rcx,offset MT_System.Single
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovss    xmm1,dword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A27DE0]
jmp       near ptr M02_L17
mov       rdx,rsi
mov       rcx,offset MT_System.Double
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovsd    xmm1,qword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A27DC8]
jmp       near ptr M02_L17
mov       rdx,rsi
mov       rcx,offset MT_System.Char
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A2CD68]
jmp       near ptr M02_L17
M02_L49
 
mov       rcx,2487BDC4010
cmp       rbp,rcx
je        short M02_L51
mov       rcx,2487BDC6560
cmp       rbp,rcx
je        short M02_L50
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63B5170]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F6066718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L50
 
mov       rdx,rsi
mov       rcx,offset MT_System.UIntPtr
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A276C0]
jmp       short M02_L52
M02_L51
 
mov       rdx,rsi
mov       rcx,offset MT_System.IntPtr
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A276C0]
M02_L52
 
movzx     eax,al
jmp       near ptr M02_L17
M02_L53
 
mov       ecx,2E5
mov       rdx,7FF9F5C84000
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FF9F60666E8]
int       3
M02_L54
 
mov       rcx,rdi
mov       rdx,rbx
call      System.RuntimeTypeHandle.IsEquivalentTo(System.RuntimeType, System.RuntimeType)
test      eax,eax
jne       near ptr M02_L05
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F638CD98]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbx
call      qword ptr [7FF9F638C768]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F5DDF708]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L55
 
call      qword ptr [7FF9F5D27138]
int       3
M02_L56
 
mov       rcx,rbx
call      qword ptr [7FF9F5D24918]; System.Enum.GetNamesNoCopy(System.RuntimeType)
mov       r8,rsi
mov       rcx,offset MT_System.String
cmp       [r8],rcx
je        short M02_L57
mov       rdx,rsi
call      qword ptr [7FF9F5DD43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M02_L57
 
mov       rdx,rax
mov       rcx,offset MD_System.Array.IndexOf[[System.String, System.Private.CoreLib]](System.String[], System.String)
call      qword ptr [7FF9F689D980]
not       eax
shr       eax,1F
add       rsp,20
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
ret
M02_L58
 
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63B5170]
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F6066718]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M02_L59
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       r13,rax
call      qword ptr [7FF9F638CDF8]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbp
call      qword ptr [7FF9F638C768]
mov       rdx,rax
mov       rcx,r13
call      qword ptr [7FF9F5DDF708]
mov       rcx,r13
call      CORINFO_HELP_THROW
M02_L60
 
cmp       r14d,0A
ja        near ptr M02_L49
mov       edx,r14d
lea       rcx,[7FF9F694BF30]
mov       ecx,[rcx+rdx*4]
lea       rax,[M02_L00]
add       rcx,rax
jmp       rcx
M02_L61
 
mov       rdx,rax
call      qword ptr [7FF9F5DD43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M02_L62
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,98
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
vmovdqa   xmmword ptr [rbp+20],xmm4
vmovdqa   xmmword ptr [rbp+30],xmm4
vmovdqa   xmmword ptr [rbp+40],xmm4
vmovdqa   xmmword ptr [rbp+50],xmm4
mov       [rbp+60],rax
mov       rax,0D1D3B2C629D7
mov       [rbp],rax
mov       rsi,rcx
mov       rbx,rdx
mov       edi,r8d
mov       r14d,r9d
test      edi,edi
jl        near ptr M03_L05
test      r14d,0FFFFFFFC
jne       near ptr M03_L06
M03_L00
 
cmp       edi,1
jle       near ptr M03_L07
mov       r15d,[rsi+8]
test      r15d,r15d
je        near ptr M03_L07
cmp       dword ptr [rbx+8],0
je        near ptr M03_L09
M03_L01
 
test      [rsp],esp
sub       rsp,200
lea       rcx,[rsp+30]
mov       [rbp+58],rcx
mov       dword ptr [rbp+60],80
xor       ecx,ecx
mov       [rbp+48],rcx
mov       [rbp+50],ecx
lea       rcx,[rsi+0C]
mov       [rbp+38],rcx
mov       [rbp+40],r15d
vmovdqu   xmm0,xmmword ptr [rbx]
vmovdqu   xmmword ptr [rbp+28],xmm0
lea       rcx,[rbp+38]
lea       rdx,[rbp+28]
lea       r8,[rbp+48]
call      qword ptr [7FF9F5DD71B0]; System.String.MakeSeparatorListAny(System.ReadOnlySpan`1, System.ReadOnlySpan`1, System.Collections.Generic.ValueListBuilder`1 ByRef)
mov       eax,[rbp+50]
cmp       eax,[rbp+60]
ja        near ptr M03_L10
mov       r10,[rbp+58]
test      eax,eax
je        near ptr M03_L11
test      r14d,r14d
je        near ptr M03_L12
xor       r15d,r15d
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],r15
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       [rsp+28],r14d
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DD7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       rdi,rax
M03_L02
 
mov       rdx,[rbp+48]
test      rdx,rdx
je        short M03_L03
xor       ecx,ecx
mov       [rbp+48],rcx
mov       rcx,207EA001F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65D5240]; System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M03_L03
 
mov       rax,rdi
mov       rcx,0D1D3B2C629D7
cmp       [rbp],rcx
je        short M03_L04
call      CORINFO_HELP_FAIL_FAST
M03_L04
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L05
 
mov       ecx,1C7
mov       rdx,7FF9F5C84000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,edi
call      qword ptr [7FF9F68C47F8]
int       3
M03_L06
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F603ECB8]
int       3
M03_L07
 
mov       rcx,rsi
mov       edx,r14d
mov       r8d,edi
call      qword ptr [7FF9F5DD7150]; System.String.CreateSplitArrayOfThisAsSoleValue(System.StringSplitOptions, Int32)
mov       rcx,0D1D3B2C629D7
cmp       [rbp],rcx
je        short M03_L08
call      CORINFO_HELP_FAIL_FAST
M03_L08
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L09
 
cmp       r15d,edi
jge       near ptr M03_L01
and       r14d,0FFFFFFFD
jmp       near ptr M03_L01
M03_L10
 
call      qword ptr [7FF9F603E9D0]
int       3
M03_L11
 
mov       edi,1
jmp       near ptr M03_L00
M03_L12
 
xor       r15d,r15d
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],r15
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DD7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       rdi,rax
jmp       near ptr M03_L02
 
System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,edx
mov       edi,[rbx+8]
lea       ebp,[rdi-1]
mov       r14d,ebp
xor       r15d,r15d
test      sil,1
je        short M04_L03
xor       r15d,r15d
test      edi,edi
jle       short M04_L03
M04_L00
 
mov       ecx,r15d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L01
mov       rax,[7FFA534C0728]
test      byte ptr [rax+rcx],80
je        short M04_L03
jmp       short M04_L02
M04_L01
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L03
M04_L02
 
inc       r15d
cmp       edi,r15d
jg        short M04_L00
M04_L03
 
test      sil,2
je        near ptr M04_L10
mov       r14d,ebp
cmp       r14d,r15d
jl        short M04_L10
mov       ecx,r14d
or        ecx,r15d
jl        short M04_L07
cmp       edi,r14d
jle       short M04_L07
M04_L04
 
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L05
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L06
M04_L05
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L06
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L04
jmp       short M04_L10
M04_L07
 
cmp       r14d,edi
jae       short M04_L14
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L08
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L09
M04_L08
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L09
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L07
M04_L10
 
mov       r8d,r14d
sub       r8d,r15d
inc       r8d
cmp       edi,r8d
jne       short M04_L12
mov       rax,rbx
M04_L11
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L12
 
test      r8d,r8d
je        short M04_L13
mov       rcx,rbx
mov       edx,r15d
call      qword ptr [7FFA534A34A0]; Precode of System.String.InternalSubString(Int32, Int32)
jmp       short M04_L11
M04_L13
 
mov       rax,[7FFA534C08A0]
mov       rax,[rax]
jmp       short M04_L11
M04_L14
 
call      qword ptr [7FFA53493D20]; CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.SplitWithTrimEntriesCount()
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,58
lea       rbp,[rsp+90]
xor       eax,eax
mov       [rbp-58],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
mov       [rbp-40],rax
mov       [rbp-70],rsp
mov       rbx,rcx
mov       rsi,[rbx+298]
test      rsi,rsi
je        short M00_L00
xor       ecx,ecx
cmp       dword ptr [rsi+8],0
sete      cl
test      ecx,ecx
sete      cl
movzx     ecx,cl
cmp       dword ptr [rsi+8],0
jne       short M00_L01
jmp       short M00_L01
M00_L00
 
xor       ecx,ecx
M00_L01
 
test      ecx,ecx
je        near ptr M00_L26
cmp       dword ptr [rsi+8],0
je        short M00_L05
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       short M00_L02
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L28
jmp       short M00_L03
M00_L02
 
call      qword ptr [7FF9F68AF2E8]
test      eax,eax
jne       near ptr M00_L28
M00_L03
 
mov       ecx,[rsi+8]
dec       ecx
cmp       ecx,[rsi+8]
jae       near ptr M00_L38
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L04
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L28
jmp       short M00_L05
M00_L04
 
call      qword ptr [7FF9F68AF2E8]
test      eax,eax
jne       near ptr M00_L28
M00_L05
 
mov       rcx,offset MT_System.StringSplitOptions
call      CORINFO_HELP_NEWSFAST
mov       dword ptr [rax+8],2
mov       rdx,rax
mov       rcx,249DC4177D8
cmp       [rcx],ecx
call      qword ptr [7FF9F5CFA770]; System.RuntimeType.IsEnumDefined(System.Object)
test      eax,eax
je        near ptr M00_L29
xor       ecx,ecx
mov       [rbp-40],rcx
mov       edi,0A
mov       ecx,1
mov       eax,ecx
test      ecx,ecx
je        near ptr M00_L31
M00_L06
 
test      eax,eax
je        near ptr M00_L32
M00_L07
 
mov       rcx,offset MT_System.Char[]
mov       edx,1
call      CORINFO_HELP_NEWARR_1_VC
mov       word ptr [rax+10],2E
cmp       [rsi],sil
add       rax,10
mov       rcx,rsi
mov       [rbp-58],rax
mov       dword ptr [rbp-50],1
lea       rdx,[rbp-58]
mov       r8d,edi
mov       r9d,2
call      qword ptr [7FF9F5DB70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
mov       rsi,rax
test      rsi,rsi
je        near ptr M00_L34
cmp       dword ptr [rsi+8],0
je        near ptr M00_L35
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyCollection`1[[System.String, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
M00_L08
 
mov       rcx,[rdi+8]
mov       r11,7FF9F5C710E0
call      qword ptr [r11]
test      eax,eax
je        near ptr M00_L36
mov       rcx,[rdi+8]
mov       r11,7FF9F5C710E8
call      qword ptr [r11]
mov       rsi,rax
M00_L09
 
mov       [rbp-60],rsi
test      rsi,rsi
je        near ptr M00_L18
mov       r14,[rsi]
mov       r15,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       r14,r15
jne       near ptr M00_L18
jmp       short M00_L12
M00_L10
 
mov       r10,rsi
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       near ptr M00_L21
mov       r13,[r10+10]
cmp       r9d,[r13+8]
jae       short M00_L13
mov       ecx,r9d
mov       r12,[r13+rcx*8+10]
M00_L11
 
mov       [rbp-48],r12
mov       r12,[rbx+18]
mov       rdx,[rbp-48]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
M00_L12
 
cmp       r14,r15
jne       short M00_L15
mov       rax,rsi
mov       r8d,[rax+8]
inc       r8d
mov       edi,[rax+0C]
cmp       r8d,edi
jae       short M00_L14
mov       [rax+8],r8d
jmp       short M00_L10
M00_L13
 
call      CORINFO_HELP_RNGCHKFAIL
M00_L14
 
mov       [rax+8],edi
jmp       near ptr M00_L24
M00_L15
 
mov       rcx,rsi
mov       r11,7FF9F5C710C8
call      qword ptr [r11]
test      eax,eax
jne       near ptr M00_L22
jmp       near ptr M00_L24
M00_L16
 
mov       r10,rsi
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       short M00_L21
mov       r13,[r10+10]
cmp       r9d,[r13+8]
jae       short M00_L13
mov       ecx,r9d
mov       r12,[r13+rcx*8+10]
M00_L17
 
mov       [rbp-48],r12
mov       r12,[rbx+18]
mov       rdx,[rbp-48]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
M00_L18
 
mov       r14,[rsi]
mov       r15,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       r14,r15
jne       short M00_L19
mov       rax,rsi
mov       r8d,[rax+8]
inc       r8d
mov       edi,[rax+0C]
cmp       r8d,edi
jae       short M00_L20
mov       [rax+8],r8d
jmp       short M00_L16
M00_L19
 
mov       rcx,rsi
mov       r11,7FF9F5C710C8
call      qword ptr [r11]
test      eax,eax
jne       short M00_L23
jmp       short M00_L24
M00_L20
 
mov       [rax+8],edi
jmp       short M00_L24
M00_L21
 
mov       ecx,[r10+8]
call      qword ptr [7FF9F601EFD0]
int       3
M00_L22
 
mov       rcx,rsi
mov       r11,7FF9F5C710D0
call      qword ptr [r11]
mov       r12,rax
jmp       near ptr M00_L11
M00_L23
 
mov       rcx,rsi
mov       r11,7FF9F5C710D0
call      qword ptr [r11]
mov       r12,rax
jmp       near ptr M00_L17
M00_L24
 
cmp       r14,r15
jne       near ptr M00_L37
M00_L25
 
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M00_L26
 
call      qword ptr [7FF9F6335368]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L27
call      qword ptr [7FF9F63350B0]
mov       rbx,rax
M00_L27
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,249DC408468
mov       r8,rbx
call      qword ptr [7FF9F6046670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L28
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DB73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L05
M00_L29
 
call      qword ptr [7FF9F6335170]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L30
call      qword ptr [7FF9F63350C8]
mov       rbx,rax
M00_L30
 
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,249DC409EE0
mov       r8,rbx
call      qword ptr [7FF9F5E6D470]
mov       rcx,r14
call      CORINFO_HELP_THROW
M00_L31
 
movzx     ecx,byte ptr [rbp-40]
test      cl,cl
je        near ptr M00_L06
lea       rcx,[rbp-40]
call      qword ptr [7FF9F5E647B0]
mov       edi,eax
jmp       near ptr M00_L07
M00_L32
 
call      qword ptr [7FF9F63352A8]
mov       r15,rax
test      r15,r15
jne       short M00_L33
call      qword ptr [7FF9F63350C8]
mov       r15,rax
M00_L33
 
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,249DC404368
mov       r8,r15
call      qword ptr [7FF9F5E6D470]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M00_L34
 
mov       ecx,2
call      qword ptr [7FF9F601ED00]
int       3
M00_L35
 
mov       rcx,7FF9F5CF5120
mov       edx,2D
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,2094A401FF8
mov       rdi,[rcx]
jmp       near ptr M00_L08
M00_L36
 
mov       rcx,7FF9F5CF5120
mov       edx,20
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,2094A402000
mov       rsi,[rcx]
jmp       near ptr M00_L09
M00_L37
 
mov       rcx,rsi
mov       r11,7FF9F5C710D8
call      qword ptr [r11]
jmp       near ptr M00_L25
M00_L38
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+90]
cmp       qword ptr [rbp-60],0
je        short M00_L39
mov       rsi,[rbp-60]
mov       r14,[rsi]
mov       r15,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       r14,r15
je        short M00_L39
mov       rcx,rsi
mov       r11,7FF9F5C710D8
call      qword ptr [r11]
M00_L39
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.RuntimeType.IsEnumDefined(System.Object)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
vzeroupper
mov       rbx,rcx
mov       rsi,rdx
M01_L00
 
test      rsi,rsi
je        near ptr M01_L46
mov       rcx,[rbx+18]
mov       rax,rcx
test      cl,2
jne       short M01_L01
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M01_L02
M01_L01
 
xor       ecx,ecx
M01_L02
 
movzx     ecx,cl
test      ecx,ecx
je        near ptr M01_L48
mov       rcx,rsi
call      System.Object.GetType()
mov       rdi,rax
mov       rcx,[rdi+18]
mov       rax,rcx
test      cl,2
jne       short M01_L03
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M01_L04
M01_L03
 
xor       ecx,ecx
M01_L04
 
movzx     ecx,cl
test      ecx,ecx
je        short M01_L08
cmp       rbx,rdi
jne       near ptr M01_L47
M01_L05
 
mov       rcx,[rdi+18]
mov       rax,rcx
mov       rdx,rax
test      al,2
jne       short M01_L06
mov       rax,[rdx+10]
mov       rdx,offset MT_System.Enum
cmp       rax,rdx
sete      al
movzx     eax,al
jmp       short M01_L07
M01_L06
 
xor       eax,eax
M01_L07
 
movzx     eax,al
test      eax,eax
je        near ptr M01_L48
mov       rax,2094A4000A0
mov       rbp,[rax]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M01_L63
mov       ecx,eax
mov       rcx,[rbp+rcx*8+10]
mov       rdi,rcx
M01_L08
 
mov       rcx,249DC400020
cmp       rdi,rcx
je        near ptr M01_L49
mov       rcx,rdi
call      qword ptr [7FF9F5D06070]; System.Type.IsIntegerType(System.Type)
test      eax,eax
je        near ptr M01_L51
mov       rcx,2094A4000A0
mov       rbp,[rcx]
mov       rcx,[rbx+18]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M01_L63
mov       ecx,eax
mov       rbp,[rbp+rcx*8+10]
cmp       rbp,rdi
jne       near ptr M01_L52
test      rbp,rbp
je        near ptr M01_L22
mov       rcx,[rbp+10]
test      rcx,rcx
je        near ptr M01_L18
mov       rax,[rcx]
test      rax,rax
je        near ptr M01_L18
M01_L09
 
mov       edi,[rax+90]
test      edi,edi
je        near ptr M01_L23
M01_L10
 
add       edi,0FFFFFFFC
cmp       edi,5
jne       near ptr M01_L21
mov       rdx,offset MT_System.Int32
cmp       [rsi],rdx
je        short M01_L11
mov       rdx,rsi
mov       rcx,offset MT_System.Int32
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
M01_L11
 
mov       r14d,[rsi+8]
mov       rcx,[rbx+10]
test      rcx,rcx
je        short M01_L19
mov       rcx,[rcx]
M01_L12
 
test      rcx,rcx
je        short M01_L15
mov       rax,[rcx+78]
M01_L13
 
test      rax,rax
je        short M01_L14
mov       rcx,offset MT_System.Enum+EnumInfo`1[[System.UInt32, System.Private.CoreLib]]
cmp       [rax],rcx
je        short M01_L16
M01_L14
 
mov       rcx,rbx
xor       edx,edx
call      qword ptr [7FF9F61D7528]; System.Enum.g__InitializeEnumInfo|7_0[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, Boolean)
jmp       short M01_L16
M01_L15
 
xor       eax,eax
jmp       short M01_L13
M01_L16
 
mov       r15,[rax+8]
cmp       byte ptr [rax+19],0
je        near ptr M01_L53
mov       eax,r14d
mov       edx,[r15+8]
cmp       rdx,rax
seta      al
movzx     eax,al
M01_L17
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L18
 
mov       rcx,rbp
call      qword ptr [7FF9F5D06658]; System.RuntimeType.InitializeCache()
jmp       near ptr M01_L09
M01_L19
 
xor       ecx,ecx
jmp       short M01_L12
mov       rcx,offset MT_System.Char
cmp       [rsi],rcx
je        short M01_L20
mov       rdx,rsi
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
M01_L20
 
movzx     edx,word ptr [rsi+8]
mov       rcx,rbx
call      qword ptr [7FF9F6A059C8]
jmp       short M01_L17
M01_L21
 
cmp       edi,0A
ja        near ptr M01_L58
mov       edx,edi
lea       rcx,[7FF9F690C170]
mov       ecx,[rcx+rdx*4]
lea       rax,[M01_L00]
add       rcx,rax
jmp       rcx
M01_L22
 
xor       edi,edi
jmp       near ptr M01_L10
M01_L23
 
mov       rdi,rbp
mov       rcx,rdi
call      qword ptr [7FF9F5D06AA8]; System.RuntimeType.get_IsActualEnum()
test      eax,eax
jne       near ptr M01_L27
M01_L24
 
mov       rcx,249DC406498
cmp       rdi,rcx
je        near ptr M01_L42
mov       rcx,249DC404198
cmp       rdi,rcx
je        near ptr M01_L30
mov       rcx,249DC4064C0
cmp       rdi,rcx
je        near ptr M01_L41
mov       rcx,249DC404038
cmp       rdi,rcx
je        near ptr M01_L38
mov       rcx,249DC404248
cmp       rdi,rcx
je        near ptr M01_L29
mov       rcx,249DC403F48
cmp       rdi,rcx
je        near ptr M01_L31
mov       rcx,249DC4064E8
cmp       rdi,rcx
je        near ptr M01_L37
mov       rcx,249DC403D90
cmp       rdi,rcx
je        near ptr M01_L36
mov       rcx,249DC406448
cmp       rdi,rcx
je        near ptr M01_L35
mov       rcx,249DC406470
cmp       rdi,rcx
je        near ptr M01_L45
mov       rcx,249DC406510
cmp       rdi,rcx
je        near ptr M01_L40
mov       rcx,249DC406538
cmp       rdi,rcx
je        near ptr M01_L34
mov       rcx,249DC4071E0
cmp       rdi,rcx
je        near ptr M01_L44
mov       rcx,249DC403C08
cmp       rdi,rcx
je        near ptr M01_L43
mov       rcx,249DC400020
cmp       rdi,rcx
je        near ptr M01_L33
mov       rcx,249DC4153E0
mov       r14d,1
mov       eax,2
cmp       rdi,rcx
cmove     r14d,eax
M01_L25
 
mov       edi,r14d
mov       rcx,[rbp+10]
test      rcx,rcx
je        near ptr M01_L39
mov       rax,[rcx]
test      rax,rax
je        near ptr M01_L39
M01_L26
 
mov       [rax+90],edi
jmp       near ptr M01_L10
M01_L27
 
mov       rcx,rbp
call      qword ptr [7FF9F5CFA728]; System.RuntimeType.GetEnumUnderlyingType()
mov       rdi,rax
test      rdi,rdi
jne       short M01_L32
M01_L28
 
jmp       near ptr M01_L24
M01_L29
 
mov       r14d,9
jmp       short M01_L25
M01_L30
 
mov       r14d,6
jmp       short M01_L25
M01_L31
 
mov       r14d,0A
jmp       short M01_L25
M01_L32
 
mov       rcx,offset MT_System.RuntimeType
cmp       [rdi],rcx
jne       near ptr M01_L62
jmp       short M01_L28
M01_L33
 
mov       r14d,12
jmp       short M01_L25
M01_L34
 
mov       r14d,0E
jmp       short M01_L25
M01_L35
 
mov       r14d,3
jmp       near ptr M01_L25
M01_L36
 
mov       r14d,0C
jmp       near ptr M01_L25
M01_L37
 
mov       r14d,0B
jmp       near ptr M01_L25
M01_L38
 
mov       r14d,8
jmp       near ptr M01_L25
M01_L39
 
mov       rcx,rbp
call      qword ptr [7FF9F5D06658]; System.RuntimeType.InitializeCache()
jmp       near ptr M01_L26
M01_L40
 
mov       r14d,0D
jmp       near ptr M01_L25
M01_L41
 
mov       r14d,7
jmp       near ptr M01_L25
M01_L42
 
mov       r14d,5
jmp       near ptr M01_L25
M01_L43
 
mov       r14d,10
jmp       near ptr M01_L25
M01_L44
 
mov       r14d,0F
jmp       near ptr M01_L25
M01_L45
 
mov       r14d,4
jmp       near ptr M01_L25
mov       rdx,rsi
mov       rcx,offset MT_System.SByte
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A059B0]
jmp       near ptr M01_L17
mov       rdx,rsi
mov       rcx,offset MT_System.Byte
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A059B0]
jmp       near ptr M01_L17
mov       rdx,rsi
mov       rcx,offset MT_System.Int16
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A05998]
jmp       near ptr M01_L17
mov       rdx,rsi
mov       rcx,offset MT_System.UInt16
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A05998]
jmp       near ptr M01_L17
M01_L46
 
mov       ecx,2E5
mov       rdx,7FF9F5C64000
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FF9F60466E8]
int       3
M01_L47
 
mov       rcx,rdi
mov       rdx,rbx
call      System.RuntimeTypeHandle.IsEquivalentTo(System.RuntimeType, System.RuntimeType)
test      eax,eax
jne       near ptr M01_L05
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F636CD98]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbx
call      qword ptr [7FF9F636C768]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F5DBF708]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L48
 
call      qword ptr [7FF9F5D07138]
int       3
M01_L49
 
mov       rcx,rbx
call      qword ptr [7FF9F5D04918]; System.Enum.GetNamesNoCopy(System.RuntimeType)
mov       r8,rsi
mov       rcx,offset MT_System.String
cmp       [r8],rcx
je        short M01_L50
mov       rdx,rsi
call      qword ptr [7FF9F5DB43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M01_L50
 
mov       rdx,rax
mov       rcx,offset MD_System.Array.IndexOf[[System.String, System.Private.CoreLib]](System.String[], System.String)
call      qword ptr [7FF9F6877AF8]
not       eax
shr       eax,1F
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L51
 
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F6395170]
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F6046718]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L52
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F636CDF8]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbp
call      qword ptr [7FF9F636C768]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F5DBF708]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L53
 
test      r15,r15
jne       short M01_L54
xor       ecx,ecx
xor       r8d,r8d
jmp       short M01_L55
M01_L54
 
lea       rcx,[r15+10]
mov       r8d,[r15+8]
M01_L55
 
cmp       dword ptr [r15+8],20
jle       short M01_L56
mov       edx,r8d
mov       r8d,r14d
call      qword ptr [7FF9F6A07720]
jmp       short M01_L57
M01_L56
 
mov       edx,r14d
call      qword ptr [7FF9F6A07BE8]; System.SpanHelpers.NonPackedIndexOfValueType[[System.Int32, System.Private.CoreLib],[System.SpanHelpers+DontNegate`1[[System.Int32, System.Private.CoreLib]], System.Private.CoreLib]](Int32 ByRef, Int32, Int32)
M01_L57
 
not       eax
shr       eax,1F
jmp       near ptr M01_L17
mov       rdx,rsi
mov       rcx,offset MT_System.UInt32
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       edx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6877B28]; System.Enum.IsDefinedPrimitive[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, UInt32)
jmp       near ptr M01_L17
mov       rdx,rsi
mov       rcx,offset MT_System.Int64
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A05290]
jmp       near ptr M01_L17
mov       rdx,rsi
mov       rcx,offset MT_System.UInt64
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A05290]
jmp       near ptr M01_L17
mov       rdx,rsi
mov       rcx,offset MT_System.Single
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovss    xmm1,dword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A04B88]
jmp       near ptr M01_L17
mov       rdx,rsi
mov       rcx,offset MT_System.Double
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovsd    xmm1,qword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A04B70]
jmp       near ptr M01_L17
M01_L58
 
mov       rcx,249DC404010
cmp       rbp,rcx
je        short M01_L60
mov       rcx,249DC406560
cmp       rbp,rcx
je        short M01_L59
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F6395170]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F6046718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L59
 
mov       rdx,rsi
mov       rcx,offset MT_System.UIntPtr
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A04468]
jmp       short M01_L61
M01_L60
 
mov       rdx,rsi
mov       rcx,offset MT_System.IntPtr
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A04468]
M01_L61
 
movzx     eax,al
jmp       near ptr M01_L17
M01_L62
 
mov       rdx,rax
call      qword ptr [7FF9F5DB43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M01_L63
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,98
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
vmovdqa   xmmword ptr [rbp+20],xmm4
vmovdqa   xmmword ptr [rbp+30],xmm4
vmovdqa   xmmword ptr [rbp+40],xmm4
vmovdqa   xmmword ptr [rbp+50],xmm4
mov       [rbp+60],rax
mov       rax,1CAFAFA68709
mov       [rbp],rax
mov       rsi,rcx
mov       rbx,rdx
mov       edi,r8d
mov       r14d,r9d
test      edi,edi
jl        near ptr M02_L06
test      r14d,0FFFFFFFC
jne       near ptr M02_L07
M02_L00
 
cmp       edi,1
jle       near ptr M02_L08
mov       r15d,[rsi+8]
test      r15d,r15d
je        near ptr M02_L08
cmp       dword ptr [rbx+8],0
je        near ptr M02_L10
M02_L01
 
test      [rsp],esp
sub       rsp,200
lea       rcx,[rsp+30]
mov       [rbp+58],rcx
mov       dword ptr [rbp+60],80
xor       ecx,ecx
mov       [rbp+48],rcx
mov       [rbp+50],ecx
lea       rcx,[rsi+0C]
mov       [rbp+38],rcx
mov       [rbp+40],r15d
vmovdqu   xmm0,xmmword ptr [rbx]
vmovdqu   xmmword ptr [rbp+28],xmm0
lea       rcx,[rbp+38]
lea       rdx,[rbp+28]
lea       r8,[rbp+48]
call      qword ptr [7FF9F5DB71B0]; System.String.MakeSeparatorListAny(System.ReadOnlySpan`1, System.ReadOnlySpan`1, System.Collections.Generic.ValueListBuilder`1 ByRef)
mov       eax,[rbp+50]
cmp       eax,[rbp+60]
ja        near ptr M02_L11
mov       r10,[rbp+58]
test      eax,eax
je        near ptr M02_L12
test      r14d,r14d
je        near ptr M02_L05
xor       ecx,ecx
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],rcx
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       [rsp+28],r14d
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DB7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       rbx,rax
M02_L02
 
mov       rdx,[rbp+48]
test      rdx,rdx
je        short M02_L03
xor       ecx,ecx
mov       [rbp+48],rcx
mov       rcx,2094A401F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65B51D0]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M02_L03
 
mov       rax,rbx
mov       rcx,1CAFAFA68709
cmp       [rbp],rcx
je        short M02_L04
call      CORINFO_HELP_FAIL_FAST
M02_L04
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M02_L05
 
xor       r14d,r14d
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],r14
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DB7180]
mov       rbx,rax
jmp       short M02_L02
M02_L06
 
mov       ecx,1C7
mov       rdx,7FF9F5C64000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,edi
call      qword ptr [7FF9F687EFE8]
int       3
M02_L07
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F601ECB8]
int       3
M02_L08
 
mov       rcx,rsi
mov       edx,r14d
mov       r8d,edi
call      qword ptr [7FF9F5DB7150]; System.String.CreateSplitArrayOfThisAsSoleValue(System.StringSplitOptions, Int32)
mov       rcx,1CAFAFA68709
cmp       [rbp],rcx
je        short M02_L09
call      CORINFO_HELP_FAIL_FAST
M02_L09
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M02_L10
 
cmp       r15d,edi
jge       near ptr M02_L01
and       r14d,0FFFFFFFD
jmp       near ptr M02_L01
M02_L11
 
call      qword ptr [7FF9F601E9D0]
int       3
M02_L12
 
mov       edi,1
jmp       near ptr M02_L00
 
System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,edx
mov       edi,[rbx+8]
lea       ebp,[rdi-1]
mov       r14d,ebp
xor       r15d,r15d
test      sil,1
je        short M03_L03
xor       r15d,r15d
test      edi,edi
jle       short M03_L03
M03_L00
 
mov       ecx,r15d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M03_L01
mov       rax,[7FFA534C0728]
test      byte ptr [rax+rcx],80
je        short M03_L03
jmp       short M03_L02
M03_L01
 
call      qword ptr [7FFA534A7338]
test      eax,eax
je        short M03_L03
M03_L02
 
inc       r15d
cmp       edi,r15d
jg        short M03_L00
M03_L03
 
test      sil,2
je        near ptr M03_L10
mov       r14d,ebp
cmp       r14d,r15d
jl        short M03_L10
mov       ecx,r14d
or        ecx,r15d
jl        short M03_L07
cmp       edi,r14d
jle       short M03_L07
M03_L04
 
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M03_L05
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M03_L10
jmp       short M03_L06
M03_L05
 
call      qword ptr [7FFA534A7338]
test      eax,eax
je        short M03_L10
M03_L06
 
dec       r14d
cmp       r14d,r15d
jge       short M03_L04
jmp       short M03_L10
M03_L07
 
cmp       r14d,edi
jae       short M03_L14
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M03_L08
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M03_L10
jmp       short M03_L09
M03_L08
 
call      qword ptr [7FFA534A7338]
test      eax,eax
je        short M03_L10
M03_L09
 
dec       r14d
cmp       r14d,r15d
jge       short M03_L07
M03_L10
 
mov       r8d,r14d
sub       r8d,r15d
inc       r8d
cmp       edi,r8d
jne       short M03_L12
mov       rax,rbx
M03_L11
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L12
 
test      r8d,r8d
je        short M03_L13
mov       rcx,rbx
mov       edx,r15d
call      qword ptr [7FFA534A34A0]; Precode of System.String.InternalSubString(Int32, Int32)
jmp       short M03_L11
M03_L13
 
mov       rax,[7FFA534C08A0]
mov       rax,[rax]
jmp       short M03_L11
M03_L14
 
call      qword ptr [7FFA53493D20]; CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.SplitWithTrimEntriesCount()
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,58
lea       rbp,[rsp+90]
xor       eax,eax
mov       [rbp-58],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
mov       [rbp-40],rax
mov       [rbp-70],rsp
mov       rbx,rcx
mov       rsi,[rbx+298]
test      rsi,rsi
je        short M00_L00
xor       ecx,ecx
cmp       dword ptr [rsi+8],0
sete      cl
test      ecx,ecx
sete      cl
movzx     ecx,cl
cmp       dword ptr [rsi+8],0
jne       short M00_L01
jmp       short M00_L01
M00_L00
 
xor       ecx,ecx
M00_L01
 
test      ecx,ecx
je        near ptr M00_L26
cmp       dword ptr [rsi+8],0
je        short M00_L05
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       short M00_L03
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L28
M00_L02
 
mov       ecx,[rsi+8]
dec       ecx
cmp       ecx,[rsi+8]
jae       near ptr M00_L38
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L04
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L28
jmp       short M00_L05
M00_L03
 
call      qword ptr [7FF9F68BF2E8]
test      eax,eax
jne       near ptr M00_L28
jmp       short M00_L02
M00_L04
 
call      qword ptr [7FF9F68BF2E8]
test      eax,eax
jne       near ptr M00_L28
M00_L05
 
mov       rcx,offset MT_System.StringSplitOptions
call      CORINFO_HELP_NEWSFAST
mov       dword ptr [rax+8],2
mov       rdx,rax
mov       rcx,238E9CE77D8
cmp       [rcx],ecx
call      qword ptr [7FF9F5D0A770]; System.RuntimeType.IsEnumDefined(System.Object)
test      eax,eax
je        near ptr M00_L29
xor       ecx,ecx
mov       [rbp-40],rcx
mov       edi,0A
mov       ecx,1
mov       eax,ecx
test      ecx,ecx
je        near ptr M00_L31
M00_L06
 
test      eax,eax
je        near ptr M00_L32
M00_L07
 
mov       rcx,offset MT_System.Char[]
mov       edx,1
call      CORINFO_HELP_NEWARR_1_VC
mov       word ptr [rax+10],2E
cmp       [rsi],sil
add       rax,10
mov       rcx,rsi
mov       [rbp-58],rax
mov       dword ptr [rbp-50],1
lea       rdx,[rbp-58]
mov       r8d,edi
mov       r9d,2
call      qword ptr [7FF9F5DC70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
mov       rsi,rax
test      rsi,rsi
je        near ptr M00_L34
cmp       dword ptr [rsi+8],0
je        near ptr M00_L35
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyCollection`1[[System.String, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
M00_L08
 
mov       rcx,[rdi+8]
mov       r11,7FF9F5C810E0
call      qword ptr [r11]
test      eax,eax
je        near ptr M00_L36
mov       rcx,[rdi+8]
mov       r11,7FF9F5C810E8
call      qword ptr [r11]
mov       rcx,rax
M00_L09
 
mov       [rbp-60],rcx
test      rcx,rcx
je        near ptr M00_L18
mov       rsi,[rcx]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rsi,r14
jne       near ptr M00_L18
jmp       short M00_L12
M00_L10
 
mov       r10,rcx
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       near ptr M00_L21
mov       r15,[r10+10]
cmp       r9d,[r15+8]
jae       short M00_L13
mov       edx,r9d
mov       r13,[r15+rdx*8+10]
M00_L11
 
mov       [rbp-48],r13
mov       r12,[rbx+18]
mov       rdx,[rbp-48]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
mov       rcx,[rbp-60]
M00_L12
 
cmp       rsi,r14
jne       short M00_L15
mov       rax,rcx
mov       r8d,[rax+8]
inc       r8d
mov       edi,[rax+0C]
cmp       r8d,edi
jae       short M00_L14
mov       [rax+8],r8d
jmp       short M00_L10
M00_L13
 
call      CORINFO_HELP_RNGCHKFAIL
M00_L14
 
mov       [rax+8],edi
jmp       near ptr M00_L24
M00_L15
 
mov       r11,7FF9F5C810C8
call      qword ptr [r11]
test      eax,eax
jne       near ptr M00_L22
mov       rcx,[rbp-60]
jmp       near ptr M00_L24
M00_L16
 
mov       r10,rcx
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       short M00_L21
mov       r15,[r10+10]
cmp       r9d,[r15+8]
jae       short M00_L13
mov       edx,r9d
mov       r13,[r15+rdx*8+10]
M00_L17
 
mov       [rbp-48],r13
mov       r12,[rbx+18]
mov       rdx,[rbp-48]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
mov       rcx,[rbp-60]
M00_L18
 
mov       rsi,[rcx]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rsi,r14
jne       short M00_L19
mov       rax,rcx
mov       r8d,[rax+8]
inc       r8d
mov       edi,[rax+0C]
cmp       r8d,edi
jae       short M00_L20
mov       [rax+8],r8d
jmp       short M00_L16
M00_L19
 
mov       r11,7FF9F5C810C8
call      qword ptr [r11]
test      eax,eax
jne       short M00_L23
mov       rcx,[rbp-60]
jmp       short M00_L24
M00_L20
 
mov       [rax+8],edi
jmp       short M00_L24
M00_L21
 
mov       ecx,[r10+8]
call      qword ptr [7FF9F602EFD0]
int       3
M00_L22
 
mov       rcx,[rbp-60]
mov       r11,7FF9F5C810D0
call      qword ptr [r11]
mov       r13,rax
jmp       near ptr M00_L11
M00_L23
 
mov       rcx,[rbp-60]
mov       r11,7FF9F5C810D0
call      qword ptr [r11]
mov       r13,rax
jmp       near ptr M00_L17
M00_L24
 
cmp       rsi,r14
jne       near ptr M00_L37
M00_L25
 
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M00_L26
 
call      qword ptr [7FF9F6344570]
mov       rsi,rax
test      rsi,rsi
jne       short M00_L27
call      qword ptr [7FF9F63442B8]
mov       rsi,rax
M00_L27
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,238E9CD8468
mov       r8,rsi
call      qword ptr [7FF9F6056670]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M00_L28
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DC73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L05
M00_L29
 
call      qword ptr [7FF9F6344378]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L30
call      qword ptr [7FF9F63442D0]
mov       rbx,rax
M00_L30
 
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       r13,rax
mov       rcx,r13
mov       rdx,238E9CD9EE0
mov       r8,rbx
call      qword ptr [7FF9F5E7D470]
mov       rcx,r13
call      CORINFO_HELP_THROW
M00_L31
 
movzx     ecx,byte ptr [rbp-40]
test      cl,cl
je        near ptr M00_L06
lea       rcx,[rbp-40]
call      qword ptr [7FF9F5E747B0]
mov       edi,eax
jmp       near ptr M00_L07
M00_L32
 
call      qword ptr [7FF9F63444B0]
mov       r14,rax
test      r14,r14
jne       short M00_L33
call      qword ptr [7FF9F63442D0]
mov       r14,rax
M00_L33
 
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,238E9CD4630
mov       r8,r14
call      qword ptr [7FF9F5E7D470]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M00_L34
 
mov       ecx,2
call      qword ptr [7FF9F602ED00]
int       3
M00_L35
 
mov       rcx,7FF9F5D05120
mov       edx,2D
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,1F85BC01FF8
mov       rdi,[rcx]
jmp       near ptr M00_L08
M00_L36
 
mov       rcx,7FF9F5D05120
mov       edx,0A
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,1F85BC02000
mov       rcx,[rcx]
jmp       near ptr M00_L09
M00_L37
 
mov       r11,7FF9F5C810D8
call      qword ptr [r11]
jmp       near ptr M00_L25
M00_L38
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+90]
cmp       qword ptr [rbp-60],0
je        short M00_L39
mov       rcx,[rbp-60]
mov       rsi,[rcx]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rsi,r14
je        short M00_L39
mov       r11,7FF9F5C810D8
call      qword ptr [r11]
M00_L39
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.RuntimeType.IsEnumDefined(System.Object)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
vzeroupper
mov       rbx,rcx
mov       rsi,rdx
M01_L00
 
test      rsi,rsi
je        near ptr M01_L24
mov       rcx,[rbx+18]
mov       rax,rcx
test      cl,2
jne       short M01_L01
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M01_L02
M01_L01
 
xor       ecx,ecx
M01_L02
 
movzx     ecx,cl
test      ecx,ecx
je        near ptr M01_L26
mov       rcx,rsi
call      System.Object.GetType()
mov       rdi,rax
mov       rcx,[rdi+18]
mov       rax,rcx
test      cl,2
jne       short M01_L03
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M01_L04
M01_L03
 
xor       ecx,ecx
M01_L04
 
movzx     ecx,cl
test      ecx,ecx
je        short M01_L08
cmp       rbx,rdi
jne       near ptr M01_L25
M01_L05
 
mov       rcx,[rdi+18]
mov       rax,rcx
mov       rdx,rax
test      al,2
jne       short M01_L06
mov       rax,[rdx+10]
mov       rdx,offset MT_System.Enum
cmp       rax,rdx
sete      al
movzx     eax,al
jmp       short M01_L07
M01_L06
 
xor       eax,eax
M01_L07
 
movzx     eax,al
test      eax,eax
je        near ptr M01_L26
mov       rax,1F85BC000A0
mov       rbp,[rax]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M01_L60
mov       ecx,eax
mov       rcx,[rbp+rcx*8+10]
mov       rdi,rcx
M01_L08
 
mov       rcx,238E9CD0020
cmp       rdi,rcx
je        near ptr M01_L27
mov       rcx,rdi
call      qword ptr [7FF9F5D16070]; System.Type.IsIntegerType(System.Type)
test      eax,eax
je        near ptr M01_L29
mov       rcx,1F85BC000A0
mov       rbp,[rcx]
mov       rcx,[rbx+18]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M01_L60
mov       ecx,eax
mov       rbp,[rbp+rcx*8+10]
cmp       rbp,rdi
jne       near ptr M01_L30
test      rbp,rbp
je        near ptr M01_L23
mov       rcx,[rbp+10]
test      rcx,rcx
je        near ptr M01_L19
mov       rax,[rcx]
test      rax,rax
je        near ptr M01_L19
M01_L09
 
mov       edi,[rax+90]
test      edi,edi
je        near ptr M01_L40
M01_L10
 
add       edi,0FFFFFFFC
cmp       edi,5
jne       near ptr M01_L22
mov       rdx,offset MT_System.Int32
cmp       [rsi],rdx
je        short M01_L11
mov       rdx,rsi
mov       rcx,offset MT_System.Int32
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
M01_L11
 
mov       r14d,[rsi+8]
mov       rcx,[rbx+10]
test      rcx,rcx
je        short M01_L20
mov       rcx,[rcx]
M01_L12
 
test      rcx,rcx
je        short M01_L15
mov       rax,[rcx+78]
M01_L13
 
test      rax,rax
je        short M01_L14
mov       rcx,offset MT_System.Enum+EnumInfo`1[[System.UInt32, System.Private.CoreLib]]
cmp       [rax],rcx
je        short M01_L17
M01_L14
 
mov       rcx,rbx
xor       edx,edx
call      qword ptr [7FF9F61E4E28]; System.Enum.g__InitializeEnumInfo|7_0[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, Boolean)
jmp       short M01_L17
M01_L15
 
xor       eax,eax
jmp       short M01_L13
M01_L16
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L17
 
mov       r15,[rax+8]
cmp       byte ptr [rax+19],0
je        near ptr M01_L31
mov       eax,r14d
mov       edx,[r15+8]
cmp       rdx,rax
seta      al
movzx     eax,al
M01_L18
 
jmp       short M01_L16
M01_L19
 
mov       rcx,rbp
call      qword ptr [7FF9F5D16658]; System.RuntimeType.InitializeCache()
jmp       near ptr M01_L09
M01_L20
 
xor       ecx,ecx
jmp       short M01_L12
mov       rcx,offset MT_System.Char
cmp       [rsi],rcx
je        short M01_L21
mov       rdx,rsi
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
M01_L21
 
movzx     edx,word ptr [rsi+8]
mov       rcx,rbx
call      qword ptr [7FF9F6A27EA0]
jmp       short M01_L16
M01_L22
 
cmp       edi,0A
ja        near ptr M01_L36
mov       edx,edi
lea       rcx,[7FF9F692C970]
mov       ecx,[rcx+rdx*4]
lea       rax,[M01_L00]
add       rcx,rax
jmp       rcx
M01_L23
 
xor       edi,edi
jmp       near ptr M01_L10
mov       rdx,rsi
mov       rcx,offset MT_System.SByte
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A27E88]
jmp       near ptr M01_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Byte
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A27E88]
jmp       near ptr M01_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Int16
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A27E70]
jmp       near ptr M01_L16
mov       rdx,rsi
mov       rcx,offset MT_System.UInt16
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A27E70]
jmp       near ptr M01_L16
M01_L24
 
mov       ecx,2E5
mov       rdx,7FF9F5C74000
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FF9F60566E8]
int       3
M01_L25
 
mov       rcx,rdi
mov       rdx,rbx
call      System.RuntimeTypeHandle.IsEquivalentTo(System.RuntimeType, System.RuntimeType)
test      eax,eax
jne       near ptr M01_L05
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F638C690]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbx
call      qword ptr [7FF9F638C060]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F5DCF708]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L26
 
call      qword ptr [7FF9F5D17138]
int       3
M01_L27
 
mov       rcx,rbx
call      qword ptr [7FF9F5D14918]; System.Enum.GetNamesNoCopy(System.RuntimeType)
mov       r8,rsi
mov       rcx,offset MT_System.String
cmp       [r8],rcx
je        short M01_L28
mov       rdx,rsi
call      qword ptr [7FF9F5DC43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M01_L28
 
mov       rdx,rax
mov       rcx,offset MD_System.Array.IndexOf[[System.String, System.Private.CoreLib]](System.String[], System.String)
call      qword ptr [7FF9F6887D98]
not       eax
shr       eax,1F
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L29
 
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63A4AE0]
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F6056718]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L30
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F638C6F0]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbp
call      qword ptr [7FF9F638C060]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F5DCF708]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L31
 
test      r15,r15
jne       short M01_L32
xor       ecx,ecx
xor       r8d,r8d
jmp       short M01_L33
M01_L32
 
lea       rcx,[r15+10]
mov       r8d,[r15+8]
M01_L33
 
cmp       dword ptr [r15+8],20
jle       short M01_L34
mov       edx,r8d
mov       r8d,r14d
call      qword ptr [7FF9F6A2DC20]
jmp       short M01_L35
M01_L34
 
mov       edx,r14d
call      qword ptr [7FF9F6A2E0E8]; System.SpanHelpers.NonPackedIndexOfValueType[[System.Int32, System.Private.CoreLib],[System.SpanHelpers+DontNegate`1[[System.Int32, System.Private.CoreLib]], System.Private.CoreLib]](Int32 ByRef, Int32, Int32)
M01_L35
 
not       eax
shr       eax,1F
jmp       near ptr M01_L18
mov       rdx,rsi
mov       rcx,offset MT_System.UInt32
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       edx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6887DC8]; System.Enum.IsDefinedPrimitive[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, UInt32)
jmp       near ptr M01_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Int64
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A27768]
jmp       near ptr M01_L16
mov       rdx,rsi
mov       rcx,offset MT_System.UInt64
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A27768]
jmp       near ptr M01_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Single
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovss    xmm1,dword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A27060]
jmp       near ptr M01_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Double
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovsd    xmm1,qword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A27048]
jmp       near ptr M01_L16
M01_L36
 
mov       rcx,238E9CD43A0
cmp       rbp,rcx
je        short M01_L38
mov       rcx,238E9CD7048
cmp       rbp,rcx
je        short M01_L37
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63A4AE0]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F6056718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L37
 
mov       rdx,rsi
mov       rcx,offset MT_System.UIntPtr
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A26940]
jmp       short M01_L39
M01_L38
 
mov       rdx,rsi
mov       rcx,offset MT_System.IntPtr
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A26940]
M01_L39
 
movzx     eax,al
jmp       near ptr M01_L16
M01_L40
 
mov       r15,rbp
mov       rcx,r15
call      qword ptr [7FF9F5D16AA8]; System.RuntimeType.get_IsActualEnum()
test      eax,eax
je        short M01_L41
mov       rcx,rbp
call      qword ptr [7FF9F5D0A728]; System.RuntimeType.GetEnumUnderlyingType()
mov       r15,rax
test      r15,r15
je        short M01_L41
mov       rcx,offset MT_System.RuntimeType
cmp       [r15],rcx
je        short M01_L41
mov       rdx,rax
call      qword ptr [7FF9F5DC43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M01_L41
 
mov       rcx,238E9CD6F80
cmp       r15,rcx
jne       short M01_L42
mov       edi,5
jmp       near ptr M01_L57
M01_L42
 
mov       rcx,238E9CD4418
cmp       r15,rcx
jne       short M01_L43
mov       edi,6
jmp       near ptr M01_L57
M01_L43
 
mov       rcx,238E9CD6FA8
cmp       r15,rcx
jne       short M01_L44
mov       edi,7
jmp       near ptr M01_L57
M01_L44
 
mov       rcx,238E9CD43C8
cmp       r15,rcx
jne       short M01_L45
mov       edi,8
jmp       near ptr M01_L57
M01_L45
 
mov       rcx,238E9CD44E8
cmp       r15,rcx
jne       short M01_L46
mov       edi,9
jmp       near ptr M01_L57
M01_L46
 
mov       rcx,238E9CD42D8
cmp       r15,rcx
jne       short M01_L47
mov       edi,0A
jmp       near ptr M01_L57
M01_L47
 
mov       rcx,238E9CD6FD0
cmp       r15,rcx
jne       short M01_L48
mov       edi,0B
jmp       near ptr M01_L57
M01_L48
 
mov       rcx,238E9CD4120
cmp       r15,rcx
jne       short M01_L49
mov       edi,0C
jmp       near ptr M01_L57
M01_L49
 
mov       rcx,238E9CD6F30
cmp       r15,rcx
jne       short M01_L50
mov       edi,3
jmp       near ptr M01_L57
M01_L50
 
mov       rcx,238E9CD6F58
cmp       r15,rcx
jne       short M01_L51
mov       edi,4
jmp       near ptr M01_L57
M01_L51
 
mov       rcx,238E9CD6FF8
cmp       r15,rcx
jne       short M01_L52
mov       edi,0D
jmp       short M01_L57
M01_L52
 
mov       rcx,238E9CD7020
cmp       r15,rcx
jne       short M01_L53
mov       edi,0E
jmp       short M01_L57
M01_L53
 
mov       rcx,238E9CD8060
cmp       r15,rcx
jne       short M01_L54
mov       edi,0F
jmp       short M01_L57
M01_L54
 
mov       rcx,238E9CD3F98
cmp       r15,rcx
jne       short M01_L55
mov       edi,10
jmp       short M01_L57
M01_L55
 
mov       rcx,238E9CD0020
cmp       r15,rcx
jne       short M01_L56
mov       edi,12
jmp       short M01_L57
M01_L56
 
mov       rcx,238E9CE53E0
mov       edi,1
mov       eax,2
cmp       r15,rcx
cmove     edi,eax
M01_L57
 
cmp       qword ptr [rbp+10],0
je        short M01_L58
mov       rcx,[rbp+10]
mov       rax,[rcx]
test      rax,rax
je        short M01_L58
jmp       short M01_L59
M01_L58
 
mov       rcx,rbp
call      qword ptr [7FF9F5D16658]; System.RuntimeType.InitializeCache()
M01_L59
 
mov       [rax+90],edi
jmp       near ptr M01_L10
M01_L60
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,98
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
vmovdqa   xmmword ptr [rbp+20],xmm4
vmovdqa   xmmword ptr [rbp+30],xmm4
vmovdqa   xmmword ptr [rbp+40],xmm4
vmovdqa   xmmword ptr [rbp+50],xmm4
mov       [rbp+60],rax
mov       rax,5B585471819F
mov       [rbp],rax
mov       rsi,rcx
mov       rbx,rdx
mov       edi,r8d
mov       r14d,r9d
test      edi,edi
jl        near ptr M02_L06
test      r14d,0FFFFFFFC
jne       near ptr M02_L07
M02_L00
 
cmp       edi,1
jle       near ptr M02_L08
mov       r15d,[rsi+8]
test      r15d,r15d
je        near ptr M02_L08
cmp       dword ptr [rbx+8],0
je        near ptr M02_L10
M02_L01
 
test      [rsp],esp
sub       rsp,200
lea       rcx,[rsp+30]
mov       [rbp+58],rcx
mov       dword ptr [rbp+60],80
xor       ecx,ecx
mov       [rbp+48],rcx
mov       [rbp+50],ecx
lea       rcx,[rsi+0C]
mov       [rbp+38],rcx
mov       [rbp+40],r15d
vmovdqu   xmm0,xmmword ptr [rbx]
vmovdqu   xmmword ptr [rbp+28],xmm0
lea       rcx,[rbp+38]
lea       rdx,[rbp+28]
lea       r8,[rbp+48]
call      qword ptr [7FF9F5DC71B0]; System.String.MakeSeparatorListAny(System.ReadOnlySpan`1, System.ReadOnlySpan`1, System.Collections.Generic.ValueListBuilder`1 ByRef)
mov       eax,[rbp+50]
cmp       eax,[rbp+60]
ja        near ptr M02_L11
mov       r10,[rbp+58]
test      eax,eax
je        near ptr M02_L12
test      r14d,r14d
je        near ptr M02_L05
xor       ecx,ecx
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],rcx
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       [rsp+28],r14d
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DC7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       rbx,rax
M02_L02
 
mov       rdx,[rbp+48]
test      rdx,rdx
je        short M02_L03
xor       ecx,ecx
mov       [rbp+48],rcx
mov       rcx,1F85BC01F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65C5240]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M02_L03
 
mov       rax,rbx
mov       rcx,5B585471819F
cmp       [rbp],rcx
je        short M02_L04
call      CORINFO_HELP_FAIL_FAST
M02_L04
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M02_L05
 
xor       r14d,r14d
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],r14
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DC7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       rbx,rax
jmp       short M02_L02
M02_L06
 
mov       ecx,1C7
mov       rdx,7FF9F5C74000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,edi
call      qword ptr [7FF9F688ECB8]
int       3
M02_L07
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F602ECB8]
int       3
M02_L08
 
mov       rcx,rsi
mov       edx,r14d
mov       r8d,edi
call      qword ptr [7FF9F5DC7150]; System.String.CreateSplitArrayOfThisAsSoleValue(System.StringSplitOptions, Int32)
mov       rcx,5B585471819F
cmp       [rbp],rcx
je        short M02_L09
call      CORINFO_HELP_FAIL_FAST
M02_L09
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M02_L10
 
cmp       r15d,edi
jge       near ptr M02_L01
and       r14d,0FFFFFFFD
jmp       near ptr M02_L01
M02_L11
 
call      qword ptr [7FF9F602E9D0]
int       3
M02_L12
 
mov       edi,1
jmp       near ptr M02_L00
 
System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,edx
mov       edi,[rbx+8]
lea       ebp,[rdi-1]
mov       r14d,ebp
xor       r15d,r15d
test      sil,1
je        short M03_L03
xor       r15d,r15d
test      edi,edi
jle       short M03_L03
M03_L00
 
mov       ecx,r15d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M03_L01
mov       rax,[7FFA534C0728]
test      byte ptr [rax+rcx],80
je        short M03_L03
jmp       short M03_L02
M03_L01
 
call      qword ptr [7FFA534A7338]
test      eax,eax
je        short M03_L03
M03_L02
 
inc       r15d
cmp       edi,r15d
jg        short M03_L00
M03_L03
 
test      sil,2
je        near ptr M03_L10
mov       r14d,ebp
cmp       r14d,r15d
jl        short M03_L10
mov       ecx,r14d
or        ecx,r15d
jl        short M03_L07
cmp       edi,r14d
jle       short M03_L07
M03_L04
 
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M03_L05
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M03_L10
jmp       short M03_L06
M03_L05
 
call      qword ptr [7FFA534A7338]
test      eax,eax
je        short M03_L10
M03_L06
 
dec       r14d
cmp       r14d,r15d
jge       short M03_L04
jmp       short M03_L10
M03_L07
 
cmp       r14d,edi
jae       short M03_L14
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M03_L08
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M03_L10
jmp       short M03_L09
M03_L08
 
call      qword ptr [7FFA534A7338]
test      eax,eax
je        short M03_L10
M03_L09
 
dec       r14d
cmp       r14d,r15d
jge       short M03_L07
M03_L10
 
mov       r8d,r14d
sub       r8d,r15d
inc       r8d
cmp       edi,r8d
jne       short M03_L12
mov       rax,rbx
M03_L11
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L12
 
test      r8d,r8d
je        short M03_L13
mov       rcx,rbx
mov       edx,r15d
call      qword ptr [7FFA534A34A0]; Precode of System.String.InternalSubString(Int32, Int32)
jmp       short M03_L11
M03_L13
 
mov       rax,[7FFA534C08A0]
mov       rax,[rax]
jmp       short M03_L11
M03_L14
 
call      qword ptr [7FFA53493D20]; CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.SplitWithTrimEntriesCount()
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,58
lea       rbp,[rsp+90]
xor       eax,eax
mov       [rbp-58],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
mov       [rbp-40],rax
mov       [rbp-70],rsp
mov       rbx,rcx
mov       rsi,[rbx+298]
test      rsi,rsi
je        short M00_L00
xor       ecx,ecx
cmp       dword ptr [rsi+8],0
sete      cl
test      ecx,ecx
sete      cl
movzx     ecx,cl
cmp       dword ptr [rsi+8],0
jne       short M00_L01
jmp       short M00_L01
M00_L00
 
xor       ecx,ecx
M00_L01
 
test      ecx,ecx
je        near ptr M00_L26
cmp       dword ptr [rsi+8],0
je        short M00_L05
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       short M00_L02
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L28
jmp       short M00_L03
M00_L02
 
call      qword ptr [7FF9F670E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L28
M00_L03
 
mov       ecx,[rsi+8]
dec       ecx
cmp       ecx,[rsi+8]
jae       near ptr M00_L38
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L04
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L28
jmp       short M00_L05
M00_L04
 
call      qword ptr [7FF9F670E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L28
M00_L05
 
mov       rcx,offset MT_System.StringSplitOptions
call      CORINFO_HELP_NEWSFAST
mov       dword ptr [rax+8],2
mov       rdx,rax
mov       rcx,2761AA777D8
cmp       [rcx],ecx
call      qword ptr [7FF9F5CFA770]; System.RuntimeType.IsEnumDefined(System.Object)
test      eax,eax
je        near ptr M00_L29
xor       ecx,ecx
mov       [rbp-40],rcx
mov       edi,0A
mov       ecx,1
mov       eax,ecx
test      ecx,ecx
je        near ptr M00_L31
M00_L06
 
test      eax,eax
je        near ptr M00_L32
M00_L07
 
mov       rcx,offset MT_System.Char[]
mov       edx,1
call      CORINFO_HELP_NEWARR_1_VC
mov       word ptr [rax+10],2E
cmp       [rsi],sil
add       rax,10
mov       rcx,rsi
mov       [rbp-58],rax
mov       dword ptr [rbp-50],1
lea       rdx,[rbp-58]
mov       r8d,edi
mov       r9d,2
call      qword ptr [7FF9F5DB70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
mov       rsi,rax
test      rsi,rsi
je        near ptr M00_L34
cmp       dword ptr [rsi+8],0
je        near ptr M00_L35
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyCollection`1[[System.String, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
M00_L08
 
mov       rcx,[rdi+8]
mov       r11,7FF9F5C710E0
call      qword ptr [r11]
test      eax,eax
je        near ptr M00_L36
mov       rcx,[rdi+8]
mov       r11,7FF9F5C710E8
call      qword ptr [r11]
mov       rsi,rax
M00_L09
 
mov       [rbp-60],rsi
test      rsi,rsi
je        near ptr M00_L18
mov       r14,[rsi]
mov       r15,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       r14,r15
jne       near ptr M00_L18
jmp       short M00_L12
M00_L10
 
mov       r10,rsi
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       near ptr M00_L21
mov       r13,[r10+10]
cmp       r9d,[r13+8]
jae       short M00_L13
mov       ecx,r9d
mov       r12,[r13+rcx*8+10]
M00_L11
 
mov       [rbp-48],r12
mov       r12,[rbx+18]
mov       rdx,[rbp-48]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
M00_L12
 
cmp       r14,r15
jne       short M00_L15
mov       rax,rsi
mov       r8d,[rax+8]
inc       r8d
mov       edi,[rax+0C]
cmp       r8d,edi
jae       short M00_L14
mov       [rax+8],r8d
jmp       short M00_L10
M00_L13
 
call      CORINFO_HELP_RNGCHKFAIL
M00_L14
 
mov       [rax+8],edi
jmp       near ptr M00_L24
M00_L15
 
mov       rcx,rsi
mov       r11,7FF9F5C710C8
call      qword ptr [r11]
test      eax,eax
jne       near ptr M00_L22
jmp       near ptr M00_L24
M00_L16
 
mov       r10,rsi
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       short M00_L21
mov       r13,[r10+10]
cmp       r9d,[r13+8]
jae       short M00_L13
mov       ecx,r9d
mov       r12,[r13+rcx*8+10]
M00_L17
 
mov       [rbp-48],r12
mov       r12,[rbx+18]
mov       rdx,[rbp-48]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
M00_L18
 
mov       r14,[rsi]
mov       r15,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       r14,r15
jne       short M00_L19
mov       rax,rsi
mov       r8d,[rax+8]
inc       r8d
mov       edi,[rax+0C]
cmp       r8d,edi
jae       short M00_L20
mov       [rax+8],r8d
jmp       short M00_L16
M00_L19
 
mov       rcx,rsi
mov       r11,7FF9F5C710C8
call      qword ptr [r11]
test      eax,eax
jne       short M00_L23
jmp       short M00_L24
M00_L20
 
mov       [rax+8],edi
jmp       short M00_L24
M00_L21
 
mov       ecx,[r10+8]
call      qword ptr [7FF9F601EFD0]
int       3
M00_L22
 
mov       rcx,rsi
mov       r11,7FF9F5C710D0
call      qword ptr [r11]
mov       r12,rax
jmp       near ptr M00_L11
M00_L23
 
mov       rcx,rsi
mov       r11,7FF9F5C710D0
call      qword ptr [r11]
mov       r12,rax
jmp       near ptr M00_L17
M00_L24
 
cmp       r14,r15
jne       near ptr M00_L37
M00_L25
 
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M00_L26
 
call      qword ptr [7FF9F6335368]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L27
call      qword ptr [7FF9F63350B0]
mov       rbx,rax
M00_L27
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,2761AA68468
mov       r8,rbx
call      qword ptr [7FF9F6046670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L28
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DB73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L05
M00_L29
 
call      qword ptr [7FF9F6335170]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L30
call      qword ptr [7FF9F63350C8]
mov       rbx,rax
M00_L30
 
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,2761AA69EE0
mov       r8,rbx
call      qword ptr [7FF9F5E6D470]
mov       rcx,r14
call      CORINFO_HELP_THROW
M00_L31
 
movzx     ecx,byte ptr [rbp-40]
test      cl,cl
je        near ptr M00_L06
lea       rcx,[rbp-40]
call      qword ptr [7FF9F5E647B0]
mov       edi,eax
jmp       near ptr M00_L07
M00_L32
 
call      qword ptr [7FF9F63352A8]
mov       r15,rax
test      r15,r15
jne       short M00_L33
call      qword ptr [7FF9F63350C8]
mov       r15,rax
M00_L33
 
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,2761AA64368
mov       r8,r15
call      qword ptr [7FF9F5E6D470]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M00_L34
 
mov       ecx,2
call      qword ptr [7FF9F601ED00]
int       3
M00_L35
 
mov       rcx,7FF9F5CF5120
mov       edx,2D
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,23588C02000
mov       rdi,[rcx]
jmp       near ptr M00_L08
M00_L36
 
mov       rcx,7FF9F5CF5120
mov       edx,20
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,23588C02008
mov       rsi,[rcx]
jmp       near ptr M00_L09
M00_L37
 
mov       rcx,rsi
mov       r11,7FF9F5C710D8
call      qword ptr [r11]
jmp       near ptr M00_L25
M00_L38
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+90]
cmp       qword ptr [rbp-60],0
je        short M00_L39
mov       rsi,[rbp-60]
mov       r14,[rsi]
mov       r15,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       r14,r15
je        short M00_L39
mov       rcx,rsi
mov       r11,7FF9F5C710D8
call      qword ptr [r11]
M00_L39
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
sub       rsp,28
movzx     ecx,cx
call      qword ptr [7FFA534A7370]; Precode of System.Globalization.CharUnicodeInfo.GetCategoryCasingTableOffsetNoBoundsChecks(UInt32)
mov       rcx,[7FFA534C0750]
cmp       byte ptr [rcx+rax],0
setl      al
movzx     eax,al
add       rsp,28
ret
 
System.RuntimeType.IsEnumDefined(System.Object)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
vzeroupper
mov       rbx,rcx
mov       rsi,rdx
M02_L00
 
test      rsi,rsi
je        near ptr M02_L25
mov       rcx,[rbx+18]
mov       rax,rcx
test      cl,2
jne       short M02_L01
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M02_L02
M02_L01
 
xor       ecx,ecx
M02_L02
 
movzx     ecx,cl
test      ecx,ecx
je        near ptr M02_L27
mov       rcx,rsi
call      System.Object.GetType()
mov       rdi,rax
mov       rcx,[rdi+18]
mov       rax,rcx
test      cl,2
jne       short M02_L03
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M02_L04
M02_L03
 
xor       ecx,ecx
M02_L04
 
movzx     ecx,cl
test      ecx,ecx
je        short M02_L08
cmp       rbx,rdi
jne       near ptr M02_L26
M02_L05
 
mov       rcx,[rdi+18]
mov       rax,rcx
mov       rdx,rax
test      al,2
jne       short M02_L06
mov       rax,[rdx+10]
mov       rdx,offset MT_System.Enum
cmp       rax,rdx
sete      al
movzx     eax,al
jmp       short M02_L07
M02_L06
 
xor       eax,eax
M02_L07
 
movzx     eax,al
test      eax,eax
je        near ptr M02_L27
mov       rax,23588C000A0
mov       rbp,[rax]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M02_L61
mov       ecx,eax
mov       rcx,[rbp+rcx*8+10]
mov       rdi,rcx
M02_L08
 
mov       rcx,2761AA60020
cmp       rdi,rcx
je        near ptr M02_L28
mov       rcx,rdi
call      qword ptr [7FF9F5D06070]; System.Type.IsIntegerType(System.Type)
test      eax,eax
je        near ptr M02_L30
mov       rcx,23588C000A0
mov       rbp,[rcx]
mov       rcx,[rbx+18]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M02_L61
mov       ecx,eax
mov       rbp,[rbp+rcx*8+10]
cmp       rbp,rdi
jne       near ptr M02_L31
test      rbp,rbp
je        near ptr M02_L24
mov       rcx,[rbp+10]
test      rcx,rcx
je        near ptr M02_L23
mov       rax,[rcx]
test      rax,rax
je        near ptr M02_L23
M02_L09
 
mov       edi,[rax+90]
test      edi,edi
je        near ptr M02_L41
M02_L10
 
add       edi,0FFFFFFFC
cmp       edi,5
jne       near ptr M02_L22
mov       rdx,offset MT_System.Int32
cmp       [rsi],rdx
je        short M02_L11
mov       rdx,rsi
mov       rcx,offset MT_System.Int32
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
M02_L11
 
mov       r14d,[rsi+8]
mov       rcx,[rbx+10]
test      rcx,rcx
je        short M02_L19
mov       rcx,[rcx]
M02_L12
 
test      rcx,rcx
je        short M02_L15
mov       rax,[rcx+78]
M02_L13
 
test      rax,rax
je        short M02_L14
mov       rcx,offset MT_System.Enum+EnumInfo`1[[System.UInt32, System.Private.CoreLib]]
cmp       [rax],rcx
je        short M02_L17
M02_L14
 
mov       rcx,rbx
xor       edx,edx
call      qword ptr [7FF9F61D7528]; System.Enum.g__InitializeEnumInfo|7_0[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, Boolean)
jmp       short M02_L17
M02_L15
 
xor       eax,eax
jmp       short M02_L13
M02_L16
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L17
 
mov       r15,[rax+8]
cmp       byte ptr [rax+19],0
je        near ptr M02_L32
mov       eax,r14d
mov       edx,[r15+8]
cmp       rdx,rax
seta      al
movzx     eax,al
M02_L18
 
jmp       short M02_L16
mov       rcx,offset MT_System.Char
cmp       [rsi],rcx
je        short M02_L21
jmp       short M02_L20
M02_L19
 
xor       ecx,ecx
jmp       short M02_L12
M02_L20
 
mov       rdx,rsi
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
M02_L21
 
movzx     edx,word ptr [rsi+8]
mov       rcx,rbx
call      qword ptr [7FF9F6A07F60]
jmp       short M02_L16
M02_L22
 
cmp       edi,0A
ja        near ptr M02_L37
mov       edx,edi
lea       rcx,[7FF9F690E4B0]
mov       ecx,[rcx+rdx*4]
lea       rax,[M02_L00]
add       rcx,rax
jmp       rcx
M02_L23
 
mov       rcx,rbp
call      qword ptr [7FF9F5D06658]; System.RuntimeType.InitializeCache()
jmp       near ptr M02_L09
M02_L24
 
xor       edi,edi
jmp       near ptr M02_L10
mov       rdx,rsi
mov       rcx,offset MT_System.SByte
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A07F48]
jmp       near ptr M02_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Byte
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A07F48]
jmp       near ptr M02_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Int16
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A07F30]
jmp       near ptr M02_L16
mov       rdx,rsi
mov       rcx,offset MT_System.UInt16
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A07F30]
jmp       near ptr M02_L16
M02_L25
 
mov       ecx,2E5
mov       rdx,7FF9F5C64000
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FF9F60466E8]
int       3
M02_L26
 
mov       rcx,rdi
mov       rdx,rbx
call      System.RuntimeTypeHandle.IsEquivalentTo(System.RuntimeType, System.RuntimeType)
test      eax,eax
jne       near ptr M02_L05
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F636CD98]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbx
call      qword ptr [7FF9F636C768]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F5DBF708]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L27
 
call      qword ptr [7FF9F5D07138]
int       3
M02_L28
 
mov       rcx,rbx
call      qword ptr [7FF9F5D04918]; System.Enum.GetNamesNoCopy(System.RuntimeType)
mov       r8,rsi
mov       rcx,offset MT_System.String
cmp       [r8],rcx
je        short M02_L29
mov       rdx,rsi
call      qword ptr [7FF9F5DB43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M02_L29
 
mov       rdx,rax
mov       rcx,offset MD_System.Array.IndexOf[[System.String, System.Private.CoreLib]](System.String[], System.String)
call      qword ptr [7FF9F6877AF8]
not       eax
shr       eax,1F
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L30
 
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F6395170]
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F6046718]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M02_L31
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F636CDF8]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbp
call      qword ptr [7FF9F636C768]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F5DBF708]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L32
 
test      r15,r15
jne       short M02_L33
xor       ecx,ecx
xor       r8d,r8d
jmp       short M02_L34
M02_L33
 
lea       rcx,[r15+10]
mov       r8d,[r15+8]
M02_L34
 
cmp       dword ptr [r15+8],20
jle       short M02_L35
mov       edx,r8d
mov       r8d,r14d
call      qword ptr [7FF9F6A0DCC8]
jmp       short M02_L36
M02_L35
 
mov       edx,r14d
call      qword ptr [7FF9F6A0E190]; System.SpanHelpers.NonPackedIndexOfValueType[[System.Int32, System.Private.CoreLib],[System.SpanHelpers+DontNegate`1[[System.Int32, System.Private.CoreLib]], System.Private.CoreLib]](Int32 ByRef, Int32, Int32)
M02_L36
 
not       eax
shr       eax,1F
jmp       near ptr M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.UInt32
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       edx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6877B28]; System.Enum.IsDefinedPrimitive[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, UInt32)
jmp       near ptr M02_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Int64
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A07828]
jmp       near ptr M02_L16
mov       rdx,rsi
mov       rcx,offset MT_System.UInt64
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A07828]
jmp       near ptr M02_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Single
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovss    xmm1,dword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A07120]
jmp       near ptr M02_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Double
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovsd    xmm1,qword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A07108]
jmp       near ptr M02_L16
M02_L37
 
mov       rcx,2761AA64010
cmp       rbp,rcx
je        short M02_L39
mov       rcx,2761AA66560
cmp       rbp,rcx
je        short M02_L38
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F6395170]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F6046718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L38
 
mov       rdx,rsi
mov       rcx,offset MT_System.UIntPtr
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A06A00]
jmp       short M02_L40
M02_L39
 
mov       rdx,rsi
mov       rcx,offset MT_System.IntPtr
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A06A00]
M02_L40
 
movzx     eax,al
jmp       near ptr M02_L16
M02_L41
 
mov       r15,rbp
mov       rcx,r15
call      qword ptr [7FF9F5D06AA8]; System.RuntimeType.get_IsActualEnum()
test      eax,eax
je        short M02_L42
mov       rcx,rbp
call      qword ptr [7FF9F5CFA728]; System.RuntimeType.GetEnumUnderlyingType()
mov       r15,rax
test      r15,r15
je        short M02_L42
mov       rcx,offset MT_System.RuntimeType
cmp       [r15],rcx
je        short M02_L42
mov       rdx,rax
call      qword ptr [7FF9F5DB43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M02_L42
 
mov       rcx,2761AA66498
cmp       r15,rcx
jne       short M02_L43
mov       edi,5
jmp       near ptr M02_L58
M02_L43
 
mov       rcx,2761AA64198
cmp       r15,rcx
jne       short M02_L44
mov       edi,6
jmp       near ptr M02_L58
M02_L44
 
mov       rcx,2761AA664C0
cmp       r15,rcx
jne       short M02_L45
mov       edi,7
jmp       near ptr M02_L58
M02_L45
 
mov       rcx,2761AA64038
cmp       r15,rcx
jne       short M02_L46
mov       edi,8
jmp       near ptr M02_L58
M02_L46
 
mov       rcx,2761AA64248
cmp       r15,rcx
jne       short M02_L47
mov       edi,9
jmp       near ptr M02_L58
M02_L47
 
mov       rcx,2761AA63F48
cmp       r15,rcx
jne       short M02_L48
mov       edi,0A
jmp       near ptr M02_L58
M02_L48
 
mov       rcx,2761AA664E8
cmp       r15,rcx
jne       short M02_L49
mov       edi,0B
jmp       near ptr M02_L58
M02_L49
 
mov       rcx,2761AA63D90
cmp       r15,rcx
jne       short M02_L50
mov       edi,0C
jmp       near ptr M02_L58
M02_L50
 
mov       rcx,2761AA66448
cmp       r15,rcx
jne       short M02_L51
mov       edi,3
jmp       near ptr M02_L58
M02_L51
 
mov       rcx,2761AA66470
cmp       r15,rcx
jne       short M02_L52
mov       edi,4
jmp       near ptr M02_L58
M02_L52
 
mov       rcx,2761AA66510
cmp       r15,rcx
jne       short M02_L53
mov       edi,0D
jmp       short M02_L58
M02_L53
 
mov       rcx,2761AA66538
cmp       r15,rcx
jne       short M02_L54
mov       edi,0E
jmp       short M02_L58
M02_L54
 
mov       rcx,2761AA671E0
cmp       r15,rcx
jne       short M02_L55
mov       edi,0F
jmp       short M02_L58
M02_L55
 
mov       rcx,2761AA63C08
cmp       r15,rcx
jne       short M02_L56
mov       edi,10
jmp       short M02_L58
M02_L56
 
mov       rcx,2761AA60020
cmp       r15,rcx
jne       short M02_L57
mov       edi,12
jmp       short M02_L58
M02_L57
 
mov       rcx,2761AA753E0
mov       edi,1
mov       eax,2
cmp       r15,rcx
cmove     edi,eax
M02_L58
 
cmp       qword ptr [rbp+10],0
je        short M02_L59
mov       rcx,[rbp+10]
mov       rax,[rcx]
test      rax,rax
je        short M02_L59
jmp       short M02_L60
M02_L59
 
mov       rcx,rbp
call      qword ptr [7FF9F5D06658]; System.RuntimeType.InitializeCache()
M02_L60
 
mov       [rax+90],edi
jmp       near ptr M02_L10
M02_L61
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,98
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
vmovdqa   xmmword ptr [rbp+20],xmm4
vmovdqa   xmmword ptr [rbp+30],xmm4
vmovdqa   xmmword ptr [rbp+40],xmm4
vmovdqa   xmmword ptr [rbp+50],xmm4
mov       [rbp+60],rax
mov       rax,120C4A2223CB
mov       [rbp],rax
mov       rsi,rcx
mov       rbx,rdx
mov       edi,r8d
mov       r14d,r9d
test      edi,edi
jl        near ptr M03_L06
test      r14d,0FFFFFFFC
jne       near ptr M03_L07
M03_L00
 
cmp       edi,1
jle       near ptr M03_L08
mov       r15d,[rsi+8]
test      r15d,r15d
je        near ptr M03_L08
cmp       dword ptr [rbx+8],0
je        near ptr M03_L10
M03_L01
 
test      [rsp],esp
sub       rsp,200
lea       rcx,[rsp+30]
mov       [rbp+58],rcx
mov       dword ptr [rbp+60],80
xor       ecx,ecx
mov       [rbp+48],rcx
mov       [rbp+50],ecx
lea       rcx,[rsi+0C]
mov       [rbp+38],rcx
mov       [rbp+40],r15d
vmovdqu   xmm0,xmmword ptr [rbx]
vmovdqu   xmmword ptr [rbp+28],xmm0
lea       rcx,[rbp+38]
lea       rdx,[rbp+28]
lea       r8,[rbp+48]
call      qword ptr [7FF9F5DB71B0]; System.String.MakeSeparatorListAny(System.ReadOnlySpan`1, System.ReadOnlySpan`1, System.Collections.Generic.ValueListBuilder`1 ByRef)
mov       eax,[rbp+50]
cmp       eax,[rbp+60]
ja        near ptr M03_L11
mov       r10,[rbp+58]
test      eax,eax
je        near ptr M03_L12
test      r14d,r14d
je        near ptr M03_L05
xor       ecx,ecx
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],rcx
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       [rsp+28],r14d
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DB7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       rbx,rax
M03_L02
 
mov       rdx,[rbp+48]
test      rdx,rdx
je        short M03_L03
xor       ecx,ecx
mov       [rbp+48],rcx
mov       rcx,23588C01F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65B5168]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M03_L03
 
mov       rax,rbx
mov       rcx,120C4A2223CB
cmp       [rbp],rcx
je        short M03_L04
call      CORINFO_HELP_FAIL_FAST
M03_L04
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L05
 
xor       r14d,r14d
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],r14
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DB7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       rbx,rax
jmp       short M03_L02
M03_L06
 
mov       ecx,1C7
mov       rdx,7FF9F5C64000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,edi
call      qword ptr [7FF9F687EFE8]
int       3
M03_L07
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F601ECB8]
int       3
M03_L08
 
mov       rcx,rsi
mov       edx,r14d
mov       r8d,edi
call      qword ptr [7FF9F5DB7150]; System.String.CreateSplitArrayOfThisAsSoleValue(System.StringSplitOptions, Int32)
mov       rcx,120C4A2223CB
cmp       [rbp],rcx
je        short M03_L09
call      CORINFO_HELP_FAIL_FAST
M03_L09
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L10
 
cmp       r15d,edi
jge       near ptr M03_L01
and       r14d,0FFFFFFFD
jmp       near ptr M03_L01
M03_L11
 
call      qword ptr [7FF9F601E9D0]
int       3
M03_L12
 
mov       edi,1
jmp       near ptr M03_L00
 
System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,edx
mov       edi,[rbx+8]
lea       ebp,[rdi-1]
mov       r14d,ebp
xor       r15d,r15d
test      sil,1
je        short M04_L03
xor       r15d,r15d
test      edi,edi
jle       short M04_L03
M04_L00
 
mov       ecx,r15d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L01
mov       rax,[7FFA534C0728]
test      byte ptr [rax+rcx],80
je        short M04_L03
jmp       short M04_L02
M04_L01
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L03
M04_L02
 
inc       r15d
cmp       edi,r15d
jg        short M04_L00
M04_L03
 
test      sil,2
je        near ptr M04_L10
mov       r14d,ebp
cmp       r14d,r15d
jl        short M04_L10
mov       ecx,r14d
or        ecx,r15d
jl        short M04_L07
cmp       edi,r14d
jle       short M04_L07
M04_L04
 
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L05
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L06
M04_L05
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L06
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L04
jmp       short M04_L10
M04_L07
 
cmp       r14d,edi
jae       short M04_L14
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L08
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L09
M04_L08
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L09
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L07
M04_L10
 
mov       r8d,r14d
sub       r8d,r15d
inc       r8d
cmp       edi,r8d
jne       short M04_L12
mov       rax,rbx
M04_L11
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L12
 
test      r8d,r8d
je        short M04_L13
mov       rcx,rbx
mov       edx,r15d
call      qword ptr [7FFA534A34A0]; Precode of System.String.InternalSubString(Int32, Int32)
jmp       short M04_L11
M04_L13
 
mov       rax,[7FFA534C08A0]
mov       rax,[rax]
jmp       short M04_L11
M04_L14
 
call      qword ptr [7FFA53493D20]; CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.SplitWithTrimEntriesCount()
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,58
lea       rbp,[rsp+90]
xor       eax,eax
mov       [rbp-58],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
mov       [rbp-40],rax
mov       [rbp-70],rsp
mov       rbx,rcx
mov       rsi,[rbx+298]
test      rsi,rsi
je        short M00_L00
xor       ecx,ecx
cmp       dword ptr [rsi+8],0
sete      cl
test      ecx,ecx
sete      cl
movzx     ecx,cl
cmp       dword ptr [rsi+8],0
jne       short M00_L01
jmp       short M00_L01
M00_L00
 
xor       ecx,ecx
M00_L01
 
test      ecx,ecx
je        near ptr M00_L26
cmp       dword ptr [rsi+8],0
je        short M00_L05
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       short M00_L02
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L28
jmp       short M00_L03
M00_L02
 
call      qword ptr [7FF9F673E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L28
M00_L03
 
mov       ecx,[rsi+8]
dec       ecx
cmp       ecx,[rsi+8]
jae       near ptr M00_L38
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L04
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L28
jmp       short M00_L05
M00_L04
 
call      qword ptr [7FF9F673E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L28
M00_L05
 
mov       rcx,offset MT_System.StringSplitOptions
call      CORINFO_HELP_NEWSFAST
mov       dword ptr [rax+8],2
mov       rdx,rax
mov       rcx,23C0C9577D8
cmp       [rcx],ecx
call      qword ptr [7FF9F5D2A770]; System.RuntimeType.IsEnumDefined(System.Object)
test      eax,eax
je        near ptr M00_L29
xor       ecx,ecx
mov       [rbp-40],rcx
mov       edi,0A
mov       ecx,1
mov       eax,ecx
test      ecx,ecx
je        near ptr M00_L31
M00_L06
 
test      eax,eax
je        near ptr M00_L32
M00_L07
 
mov       rcx,offset MT_System.Char[]
mov       edx,1
call      CORINFO_HELP_NEWARR_1_VC
mov       word ptr [rax+10],2E
cmp       [rsi],sil
add       rax,10
mov       rcx,rsi
mov       [rbp-58],rax
mov       dword ptr [rbp-50],1
lea       rdx,[rbp-58]
mov       r8d,edi
mov       r9d,2
call      qword ptr [7FF9F5DE70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
mov       rsi,rax
test      rsi,rsi
je        near ptr M00_L34
cmp       dword ptr [rsi+8],0
je        near ptr M00_L35
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyCollection`1[[System.String, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
M00_L08
 
mov       rcx,[rdi+8]
mov       r11,7FF9F5CA10E0
call      qword ptr [r11]
test      eax,eax
je        near ptr M00_L36
mov       rcx,[rdi+8]
mov       r11,7FF9F5CA10E8
call      qword ptr [r11]
mov       rsi,rax
M00_L09
 
mov       [rbp-60],rsi
test      rsi,rsi
je        near ptr M00_L18
mov       r14,[rsi]
mov       r15,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       r14,r15
jne       near ptr M00_L18
jmp       short M00_L12
M00_L10
 
mov       r10,rsi
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       near ptr M00_L21
mov       r13,[r10+10]
cmp       r9d,[r13+8]
jae       short M00_L13
mov       ecx,r9d
mov       r12,[r13+rcx*8+10]
M00_L11
 
mov       [rbp-48],r12
mov       r12,[rbx+18]
mov       rdx,[rbp-48]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
M00_L12
 
cmp       r14,r15
jne       short M00_L15
mov       rax,rsi
mov       r8d,[rax+8]
inc       r8d
mov       edi,[rax+0C]
cmp       r8d,edi
jae       short M00_L14
mov       [rax+8],r8d
jmp       short M00_L10
M00_L13
 
call      CORINFO_HELP_RNGCHKFAIL
M00_L14
 
mov       [rax+8],edi
jmp       near ptr M00_L24
M00_L15
 
mov       rcx,rsi
mov       r11,7FF9F5CA10C8
call      qword ptr [r11]
test      eax,eax
jne       near ptr M00_L22
jmp       near ptr M00_L24
M00_L16
 
mov       r10,rsi
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       short M00_L21
mov       r13,[r10+10]
cmp       r9d,[r13+8]
jae       short M00_L13
mov       ecx,r9d
mov       r12,[r13+rcx*8+10]
M00_L17
 
mov       [rbp-48],r12
mov       r12,[rbx+18]
mov       rdx,[rbp-48]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
M00_L18
 
mov       r14,[rsi]
mov       r15,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       r14,r15
jne       short M00_L19
mov       rax,rsi
mov       r8d,[rax+8]
inc       r8d
mov       edi,[rax+0C]
cmp       r8d,edi
jae       short M00_L20
mov       [rax+8],r8d
jmp       short M00_L16
M00_L19
 
mov       rcx,rsi
mov       r11,7FF9F5CA10C8
call      qword ptr [r11]
test      eax,eax
jne       short M00_L23
jmp       short M00_L24
M00_L20
 
mov       [rax+8],edi
jmp       short M00_L24
M00_L21
 
mov       ecx,[r10+8]
call      qword ptr [7FF9F604EFD0]
int       3
M00_L22
 
mov       rcx,rsi
mov       r11,7FF9F5CA10D0
call      qword ptr [r11]
mov       r12,rax
jmp       near ptr M00_L11
M00_L23
 
mov       rcx,rsi
mov       r11,7FF9F5CA10D0
call      qword ptr [r11]
mov       r12,rax
jmp       near ptr M00_L17
M00_L24
 
cmp       r14,r15
jne       near ptr M00_L37
M00_L25
 
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M00_L26
 
call      qword ptr [7FF9F6365368]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L27
call      qword ptr [7FF9F63650B0]
mov       rbx,rax
M00_L27
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,23C0C948468
mov       r8,rbx
call      qword ptr [7FF9F6076670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L28
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DE73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L05
M00_L29
 
call      qword ptr [7FF9F6365170]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L30
call      qword ptr [7FF9F63650C8]
mov       rbx,rax
M00_L30
 
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,23C0C949EE0
mov       r8,rbx
call      qword ptr [7FF9F5E9D470]
mov       rcx,r14
call      CORINFO_HELP_THROW
M00_L31
 
movzx     ecx,byte ptr [rbp-40]
test      cl,cl
je        near ptr M00_L06
lea       rcx,[rbp-40]
call      qword ptr [7FF9F5E947B0]
mov       edi,eax
jmp       near ptr M00_L07
M00_L32
 
call      qword ptr [7FF9F63652A8]
mov       r15,rax
test      r15,r15
jne       short M00_L33
call      qword ptr [7FF9F63650C8]
mov       r15,rax
M00_L33
 
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,23C0C944368
mov       r8,r15
call      qword ptr [7FF9F5E9D470]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M00_L34
 
mov       ecx,2
call      qword ptr [7FF9F604ED00]
int       3
M00_L35
 
mov       rcx,7FF9F5D25120
mov       edx,2D
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,1FB7A802000
mov       rdi,[rcx]
jmp       near ptr M00_L08
M00_L36
 
mov       rcx,7FF9F5D25120
mov       edx,20
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,1FB7A802008
mov       rsi,[rcx]
jmp       near ptr M00_L09
M00_L37
 
mov       rcx,rsi
mov       r11,7FF9F5CA10D8
call      qword ptr [r11]
jmp       near ptr M00_L25
M00_L38
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+90]
cmp       qword ptr [rbp-60],0
je        short M00_L39
mov       rsi,[rbp-60]
mov       r14,[rsi]
mov       r15,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       r14,r15
je        short M00_L39
mov       rcx,rsi
mov       r11,7FF9F5CA10D8
call      qword ptr [r11]
M00_L39
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
sub       rsp,28
movzx     ecx,cx
call      qword ptr [7FFA534A7370]; Precode of System.Globalization.CharUnicodeInfo.GetCategoryCasingTableOffsetNoBoundsChecks(UInt32)
mov       rcx,[7FFA534C0750]
cmp       byte ptr [rcx+rax],0
setl      al
movzx     eax,al
add       rsp,28
ret
 
System.RuntimeType.IsEnumDefined(System.Object)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
vzeroupper
mov       rbx,rcx
mov       rsi,rdx
M02_L00
 
test      rsi,rsi
je        near ptr M02_L23
mov       rcx,[rbx+18]
mov       rax,rcx
test      cl,2
jne       short M02_L01
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M02_L02
M02_L01
 
xor       ecx,ecx
M02_L02
 
movzx     ecx,cl
test      ecx,ecx
je        near ptr M02_L25
mov       rcx,rsi
call      System.Object.GetType()
mov       rdi,rax
mov       rcx,[rdi+18]
mov       rax,rcx
test      cl,2
jne       short M02_L03
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M02_L04
M02_L03
 
xor       ecx,ecx
M02_L04
 
movzx     ecx,cl
test      ecx,ecx
je        short M02_L08
cmp       rbx,rdi
jne       near ptr M02_L24
M02_L05
 
mov       rcx,[rdi+18]
mov       rax,rcx
mov       rdx,rax
test      al,2
jne       short M02_L06
mov       rax,[rdx+10]
mov       rdx,offset MT_System.Enum
cmp       rax,rdx
sete      al
movzx     eax,al
jmp       short M02_L07
M02_L06
 
xor       eax,eax
M02_L07
 
movzx     eax,al
test      eax,eax
je        near ptr M02_L25
mov       rax,1FB7A8000A0
mov       rbp,[rax]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M02_L59
mov       ecx,eax
mov       rcx,[rbp+rcx*8+10]
mov       rdi,rcx
M02_L08
 
mov       rcx,23C0C940020
cmp       rdi,rcx
je        near ptr M02_L26
mov       rcx,rdi
call      qword ptr [7FF9F5D36070]; System.Type.IsIntegerType(System.Type)
test      eax,eax
je        near ptr M02_L28
mov       rcx,1FB7A8000A0
mov       rbp,[rcx]
mov       rcx,[rbx+18]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M02_L59
mov       ecx,eax
mov       rbp,[rbp+rcx*8+10]
cmp       rbp,rdi
jne       near ptr M02_L29
test      rbp,rbp
je        near ptr M02_L22
mov       rcx,[rbp+10]
test      rcx,rcx
je        near ptr M02_L18
mov       rax,[rcx]
test      rax,rax
je        near ptr M02_L18
M02_L09
 
mov       edi,[rax+90]
test      edi,edi
je        near ptr M02_L39
M02_L10
 
add       edi,0FFFFFFFC
cmp       edi,5
jne       near ptr M02_L21
mov       rdx,offset MT_System.Int32
cmp       [rsi],rdx
je        short M02_L11
mov       rdx,rsi
mov       rcx,offset MT_System.Int32
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
M02_L11
 
mov       r14d,[rsi+8]
mov       rcx,[rbx+10]
test      rcx,rcx
je        short M02_L19
mov       rcx,[rcx]
M02_L12
 
test      rcx,rcx
je        short M02_L15
mov       rax,[rcx+78]
M02_L13
 
test      rax,rax
je        short M02_L14
mov       rcx,offset MT_System.Enum+EnumInfo`1[[System.UInt32, System.Private.CoreLib]]
cmp       [rax],rcx
je        short M02_L16
M02_L14
 
mov       rcx,rbx
xor       edx,edx
call      qword ptr [7FF9F6207528]; System.Enum.g__InitializeEnumInfo|7_0[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, Boolean)
jmp       short M02_L16
M02_L15
 
xor       eax,eax
jmp       short M02_L13
M02_L16
 
mov       r15,[rax+8]
cmp       byte ptr [rax+19],0
je        near ptr M02_L30
mov       eax,r14d
mov       edx,[r15+8]
cmp       rdx,rax
seta      al
movzx     eax,al
M02_L17
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L18
 
mov       rcx,rbp
call      qword ptr [7FF9F5D36658]; System.RuntimeType.InitializeCache()
jmp       near ptr M02_L09
M02_L19
 
xor       ecx,ecx
jmp       short M02_L12
mov       rcx,offset MT_System.Char
cmp       [rsi],rcx
je        short M02_L20
mov       rdx,rsi
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
M02_L20
 
movzx     edx,word ptr [rsi+8]
mov       rcx,rbx
call      qword ptr [7FF9F6A47F60]
jmp       short M02_L17
M02_L21
 
cmp       edi,0A
ja        near ptr M02_L35
mov       edx,edi
lea       rcx,[7FF9F694E478]
mov       ecx,[rcx+rdx*4]
lea       rax,[M02_L00]
add       rcx,rax
jmp       rcx
M02_L22
 
xor       edi,edi
jmp       near ptr M02_L10
mov       rdx,rsi
mov       rcx,offset MT_System.SByte
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A47F48]
jmp       near ptr M02_L17
mov       rdx,rsi
mov       rcx,offset MT_System.Byte
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A47F48]
jmp       near ptr M02_L17
mov       rdx,rsi
mov       rcx,offset MT_System.Int16
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A47F30]
jmp       near ptr M02_L17
mov       rdx,rsi
mov       rcx,offset MT_System.UInt16
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A47F30]
jmp       near ptr M02_L17
M02_L23
 
mov       ecx,2E5
mov       rdx,7FF9F5C94000
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FF9F60766E8]
int       3
M02_L24
 
mov       rcx,rdi
mov       rdx,rbx
call      System.RuntimeTypeHandle.IsEquivalentTo(System.RuntimeType, System.RuntimeType)
test      eax,eax
jne       near ptr M02_L05
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F639CD98]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbx
call      qword ptr [7FF9F639C768]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F5DEF708]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L25
 
call      qword ptr [7FF9F5D37138]
int       3
M02_L26
 
mov       rcx,rbx
call      qword ptr [7FF9F5D34918]; System.Enum.GetNamesNoCopy(System.RuntimeType)
mov       r8,rsi
mov       rcx,offset MT_System.String
cmp       [r8],rcx
je        short M02_L27
mov       rdx,rsi
call      qword ptr [7FF9F5DE43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M02_L27
 
mov       rdx,rax
mov       rcx,offset MD_System.Array.IndexOf[[System.String, System.Private.CoreLib]](System.String[], System.String)
call      qword ptr [7FF9F68A7D98]
not       eax
shr       eax,1F
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L28
 
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63C5170]
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F6076718]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M02_L29
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F639CDF8]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbp
call      qword ptr [7FF9F639C768]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F5DEF708]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L30
 
test      r15,r15
jne       short M02_L31
xor       ecx,ecx
xor       r8d,r8d
jmp       short M02_L32
M02_L31
 
lea       rcx,[r15+10]
mov       r8d,[r15+8]
M02_L32
 
cmp       dword ptr [r15+8],20
jle       short M02_L33
mov       edx,r8d
mov       r8d,r14d
call      qword ptr [7FF9F6A4DCC8]
jmp       short M02_L34
M02_L33
 
mov       edx,r14d
call      qword ptr [7FF9F6A4E190]; System.SpanHelpers.NonPackedIndexOfValueType[[System.Int32, System.Private.CoreLib],[System.SpanHelpers+DontNegate`1[[System.Int32, System.Private.CoreLib]], System.Private.CoreLib]](Int32 ByRef, Int32, Int32)
M02_L34
 
not       eax
shr       eax,1F
jmp       near ptr M02_L17
mov       rdx,rsi
mov       rcx,offset MT_System.UInt32
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       edx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F68A7DC8]; System.Enum.IsDefinedPrimitive[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, UInt32)
jmp       near ptr M02_L17
mov       rdx,rsi
mov       rcx,offset MT_System.Int64
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A47828]
jmp       near ptr M02_L17
mov       rdx,rsi
mov       rcx,offset MT_System.UInt64
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A47828]
jmp       near ptr M02_L17
mov       rdx,rsi
mov       rcx,offset MT_System.Single
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovss    xmm1,dword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A47120]
jmp       near ptr M02_L17
mov       rdx,rsi
mov       rcx,offset MT_System.Double
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovsd    xmm1,qword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A47108]
jmp       near ptr M02_L17
M02_L35
 
mov       rcx,23C0C944010
cmp       rbp,rcx
je        short M02_L37
mov       rcx,23C0C946560
cmp       rbp,rcx
je        short M02_L36
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63C5170]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F6076718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L36
 
mov       rdx,rsi
mov       rcx,offset MT_System.UIntPtr
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A46A00]
jmp       short M02_L38
M02_L37
 
mov       rdx,rsi
mov       rcx,offset MT_System.IntPtr
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A46A00]
M02_L38
 
movzx     eax,al
jmp       near ptr M02_L17
M02_L39
 
mov       r15,rbp
mov       rcx,r15
call      qword ptr [7FF9F5D36AA8]; System.RuntimeType.get_IsActualEnum()
test      eax,eax
je        short M02_L40
mov       rcx,rbp
call      qword ptr [7FF9F5D2A728]; System.RuntimeType.GetEnumUnderlyingType()
mov       r15,rax
test      r15,r15
je        short M02_L40
mov       rcx,offset MT_System.RuntimeType
cmp       [r15],rcx
je        short M02_L40
mov       rdx,rax
call      qword ptr [7FF9F5DE43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M02_L40
 
mov       rcx,23C0C946498
cmp       r15,rcx
jne       short M02_L41
mov       edi,5
jmp       near ptr M02_L56
M02_L41
 
mov       rcx,23C0C944198
cmp       r15,rcx
jne       short M02_L42
mov       edi,6
jmp       near ptr M02_L56
M02_L42
 
mov       rcx,23C0C9464C0
cmp       r15,rcx
jne       short M02_L43
mov       edi,7
jmp       near ptr M02_L56
M02_L43
 
mov       rcx,23C0C944038
cmp       r15,rcx
jne       short M02_L44
mov       edi,8
jmp       near ptr M02_L56
M02_L44
 
mov       rcx,23C0C944248
cmp       r15,rcx
jne       short M02_L45
mov       edi,9
jmp       near ptr M02_L56
M02_L45
 
mov       rcx,23C0C943F48
cmp       r15,rcx
jne       short M02_L46
mov       edi,0A
jmp       near ptr M02_L56
M02_L46
 
mov       rcx,23C0C9464E8
cmp       r15,rcx
jne       short M02_L47
mov       edi,0B
jmp       near ptr M02_L56
M02_L47
 
mov       rcx,23C0C943D90
cmp       r15,rcx
jne       short M02_L48
mov       edi,0C
jmp       near ptr M02_L56
M02_L48
 
mov       rcx,23C0C946448
cmp       r15,rcx
jne       short M02_L49
mov       edi,3
jmp       near ptr M02_L56
M02_L49
 
mov       rcx,23C0C946470
cmp       r15,rcx
jne       short M02_L50
mov       edi,4
jmp       near ptr M02_L56
M02_L50
 
mov       rcx,23C0C946510
cmp       r15,rcx
jne       short M02_L51
mov       edi,0D
jmp       short M02_L56
M02_L51
 
mov       rcx,23C0C946538
cmp       r15,rcx
jne       short M02_L52
mov       edi,0E
jmp       short M02_L56
M02_L52
 
mov       rcx,23C0C9471E0
cmp       r15,rcx
jne       short M02_L53
mov       edi,0F
jmp       short M02_L56
M02_L53
 
mov       rcx,23C0C943C08
cmp       r15,rcx
jne       short M02_L54
mov       edi,10
jmp       short M02_L56
M02_L54
 
mov       rcx,23C0C940020
cmp       r15,rcx
jne       short M02_L55
mov       edi,12
jmp       short M02_L56
M02_L55
 
mov       rcx,23C0C9553E0
mov       edi,1
mov       eax,2
cmp       r15,rcx
cmove     edi,eax
M02_L56
 
cmp       qword ptr [rbp+10],0
je        short M02_L57
mov       rcx,[rbp+10]
mov       rax,[rcx]
test      rax,rax
je        short M02_L57
jmp       short M02_L58
M02_L57
 
mov       rcx,rbp
call      qword ptr [7FF9F5D36658]; System.RuntimeType.InitializeCache()
M02_L58
 
mov       [rax+90],edi
jmp       near ptr M02_L10
M02_L59
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,98
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
vmovdqa   xmmword ptr [rbp+20],xmm4
vmovdqa   xmmword ptr [rbp+30],xmm4
vmovdqa   xmmword ptr [rbp+40],xmm4
vmovdqa   xmmword ptr [rbp+50],xmm4
mov       [rbp+60],rax
mov       rax,2F0E87B3F0AC
mov       [rbp],rax
mov       rsi,rcx
mov       rbx,rdx
mov       edi,r8d
mov       r14d,r9d
test      edi,edi
jl        near ptr M03_L06
test      r14d,0FFFFFFFC
jne       near ptr M03_L07
M03_L00
 
cmp       edi,1
jle       near ptr M03_L08
mov       r15d,[rsi+8]
test      r15d,r15d
je        near ptr M03_L08
cmp       dword ptr [rbx+8],0
je        near ptr M03_L10
M03_L01
 
test      [rsp],esp
sub       rsp,200
lea       rcx,[rsp+30]
mov       [rbp+58],rcx
mov       dword ptr [rbp+60],80
xor       ecx,ecx
mov       [rbp+48],rcx
mov       [rbp+50],ecx
lea       rcx,[rsi+0C]
mov       [rbp+38],rcx
mov       [rbp+40],r15d
vmovdqu   xmm0,xmmword ptr [rbx]
vmovdqu   xmmword ptr [rbp+28],xmm0
lea       rcx,[rbp+38]
lea       rdx,[rbp+28]
lea       r8,[rbp+48]
call      qword ptr [7FF9F5DE71B0]; System.String.MakeSeparatorListAny(System.ReadOnlySpan`1, System.ReadOnlySpan`1, System.Collections.Generic.ValueListBuilder`1 ByRef)
mov       eax,[rbp+50]
cmp       eax,[rbp+60]
ja        near ptr M03_L11
mov       r10,[rbp+58]
test      eax,eax
je        near ptr M03_L12
test      r14d,r14d
je        near ptr M03_L05
xor       ecx,ecx
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],rcx
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       [rsp+28],r14d
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DE7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       rbx,rax
M03_L02
 
mov       rdx,[rbp+48]
test      rdx,rdx
je        short M03_L03
xor       ecx,ecx
mov       [rbp+48],rcx
mov       rcx,1FB7A801F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65E5240]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M03_L03
 
mov       rax,rbx
mov       rcx,2F0E87B3F0AC
cmp       [rbp],rcx
je        short M03_L04
call      CORINFO_HELP_FAIL_FAST
M03_L04
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L05
 
xor       r14d,r14d
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],r14
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DE7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       rbx,rax
jmp       short M03_L02
M03_L06
 
mov       ecx,1C7
mov       rdx,7FF9F5C94000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,edi
call      qword ptr [7FF9F68AECB8]
int       3
M03_L07
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F604ECB8]
int       3
M03_L08
 
mov       rcx,rsi
mov       edx,r14d
mov       r8d,edi
call      qword ptr [7FF9F5DE7150]; System.String.CreateSplitArrayOfThisAsSoleValue(System.StringSplitOptions, Int32)
mov       rcx,2F0E87B3F0AC
cmp       [rbp],rcx
je        short M03_L09
call      CORINFO_HELP_FAIL_FAST
M03_L09
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L10
 
cmp       r15d,edi
jge       near ptr M03_L01
and       r14d,0FFFFFFFD
jmp       near ptr M03_L01
M03_L11
 
call      qword ptr [7FF9F604E9D0]
int       3
M03_L12
 
mov       edi,1
jmp       near ptr M03_L00
 
System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,edx
mov       edi,[rbx+8]
lea       ebp,[rdi-1]
mov       r14d,ebp
xor       r15d,r15d
test      sil,1
je        short M04_L03
xor       r15d,r15d
test      edi,edi
jle       short M04_L03
M04_L00
 
mov       ecx,r15d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L01
mov       rax,[7FFA534C0728]
test      byte ptr [rax+rcx],80
je        short M04_L03
jmp       short M04_L02
M04_L01
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L03
M04_L02
 
inc       r15d
cmp       edi,r15d
jg        short M04_L00
M04_L03
 
test      sil,2
je        near ptr M04_L10
mov       r14d,ebp
cmp       r14d,r15d
jl        short M04_L10
mov       ecx,r14d
or        ecx,r15d
jl        short M04_L07
cmp       edi,r14d
jle       short M04_L07
M04_L04
 
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L05
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L06
M04_L05
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L06
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L04
jmp       short M04_L10
M04_L07
 
cmp       r14d,edi
jae       short M04_L14
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L08
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L09
M04_L08
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L09
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L07
M04_L10
 
mov       r8d,r14d
sub       r8d,r15d
inc       r8d
cmp       edi,r8d
jne       short M04_L12
mov       rax,rbx
M04_L11
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L12
 
test      r8d,r8d
je        short M04_L13
mov       rcx,rbx
mov       edx,r15d
call      qword ptr [7FFA534A34A0]; Precode of System.String.InternalSubString(Int32, Int32)
jmp       short M04_L11
M04_L13
 
mov       rax,[7FFA534C08A0]
mov       rax,[rax]
jmp       short M04_L11
M04_L14
 
call      qword ptr [7FFA53493D20]; CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.SplitWithTrimEntriesCount()
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,58
lea       rbp,[rsp+90]
xor       eax,eax
mov       [rbp-58],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
mov       [rbp-40],rax
mov       [rbp-70],rsp
mov       rbx,rcx
mov       rsi,[rbx+298]
test      rsi,rsi
je        short M00_L00
xor       ecx,ecx
cmp       dword ptr [rsi+8],0
sete      cl
test      ecx,ecx
sete      cl
movzx     ecx,cl
cmp       dword ptr [rsi+8],0
jne       short M00_L01
jmp       short M00_L01
M00_L00
 
xor       ecx,ecx
M00_L01
 
test      ecx,ecx
je        near ptr M00_L26
cmp       dword ptr [rsi+8],0
je        short M00_L05
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       short M00_L02
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L28
jmp       short M00_L03
M00_L02
 
call      qword ptr [7FF9F672E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L28
M00_L03
 
mov       ecx,[rsi+8]
dec       ecx
cmp       ecx,[rsi+8]
jae       near ptr M00_L38
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L04
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L28
jmp       short M00_L05
M00_L04
 
call      qword ptr [7FF9F672E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L28
M00_L05
 
mov       rcx,offset MT_System.StringSplitOptions
call      CORINFO_HELP_NEWSFAST
mov       dword ptr [rax+8],2
mov       rdx,rax
mov       rcx,1DB829C77F8
cmp       [rcx],ecx
call      qword ptr [7FF9F5D1A770]; System.RuntimeType.IsEnumDefined(System.Object)
test      eax,eax
je        near ptr M00_L29
xor       ecx,ecx
mov       [rbp-40],rcx
mov       edi,0A
mov       ecx,1
mov       eax,ecx
test      ecx,ecx
je        near ptr M00_L31
M00_L06
 
test      eax,eax
je        near ptr M00_L32
M00_L07
 
mov       rcx,offset MT_System.Char[]
mov       edx,1
call      CORINFO_HELP_NEWARR_1_VC
mov       word ptr [rax+10],2E
cmp       [rsi],sil
add       rax,10
mov       rcx,rsi
mov       [rbp-58],rax
mov       dword ptr [rbp-50],1
lea       rdx,[rbp-58]
mov       r8d,edi
mov       r9d,2
call      qword ptr [7FF9F5DD70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
mov       rsi,rax
test      rsi,rsi
je        near ptr M00_L34
cmp       dword ptr [rsi+8],0
je        near ptr M00_L35
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyCollection`1[[System.String, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
M00_L08
 
mov       rcx,[rdi+8]
mov       r11,7FF9F5C910E0
call      qword ptr [r11]
test      eax,eax
je        near ptr M00_L36
mov       rcx,[rdi+8]
mov       r11,7FF9F5C910E8
call      qword ptr [r11]
mov       rsi,rax
M00_L09
 
mov       [rbp-60],rsi
test      rsi,rsi
je        near ptr M00_L18
mov       r14,[rsi]
mov       r15,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       r14,r15
jne       near ptr M00_L18
jmp       short M00_L12
M00_L10
 
mov       r10,rsi
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       near ptr M00_L21
mov       r13,[r10+10]
cmp       r9d,[r13+8]
jae       short M00_L13
mov       ecx,r9d
mov       r12,[r13+rcx*8+10]
M00_L11
 
mov       [rbp-48],r12
mov       r12,[rbx+18]
mov       rdx,[rbp-48]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
M00_L12
 
cmp       r14,r15
jne       short M00_L15
mov       rax,rsi
mov       r8d,[rax+8]
inc       r8d
mov       edi,[rax+0C]
cmp       r8d,edi
jae       short M00_L14
mov       [rax+8],r8d
jmp       short M00_L10
M00_L13
 
call      CORINFO_HELP_RNGCHKFAIL
M00_L14
 
mov       [rax+8],edi
jmp       near ptr M00_L24
M00_L15
 
mov       rcx,rsi
mov       r11,7FF9F5C910C8
call      qword ptr [r11]
test      eax,eax
jne       near ptr M00_L22
jmp       near ptr M00_L24
M00_L16
 
mov       r10,rsi
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       short M00_L21
mov       r13,[r10+10]
cmp       r9d,[r13+8]
jae       short M00_L13
mov       ecx,r9d
mov       r12,[r13+rcx*8+10]
M00_L17
 
mov       [rbp-48],r12
mov       r12,[rbx+18]
mov       rdx,[rbp-48]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
M00_L18
 
mov       r14,[rsi]
mov       r15,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       r14,r15
jne       short M00_L19
mov       rax,rsi
mov       r8d,[rax+8]
inc       r8d
mov       edi,[rax+0C]
cmp       r8d,edi
jae       short M00_L20
mov       [rax+8],r8d
jmp       short M00_L16
M00_L19
 
mov       rcx,rsi
mov       r11,7FF9F5C910C8
call      qword ptr [r11]
test      eax,eax
jne       short M00_L23
jmp       short M00_L24
M00_L20
 
mov       [rax+8],edi
jmp       short M00_L24
M00_L21
 
mov       ecx,[r10+8]
call      qword ptr [7FF9F603EFD0]
int       3
M00_L22
 
mov       rcx,rsi
mov       r11,7FF9F5C910D0
call      qword ptr [r11]
mov       r12,rax
jmp       near ptr M00_L11
M00_L23
 
mov       rcx,rsi
mov       r11,7FF9F5C910D0
call      qword ptr [r11]
mov       r12,rax
jmp       near ptr M00_L17
M00_L24
 
cmp       r14,r15
jne       near ptr M00_L37
M00_L25
 
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M00_L26
 
call      qword ptr [7FF9F6355368]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L27
call      qword ptr [7FF9F63550B0]
mov       rbx,rax
M00_L27
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,1DB829B8468
mov       r8,rbx
call      qword ptr [7FF9F6066670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L28
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DD73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L05
M00_L29
 
call      qword ptr [7FF9F6355170]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L30
call      qword ptr [7FF9F63550C8]
mov       rbx,rax
M00_L30
 
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,1DB829B9EE0
mov       r8,rbx
call      qword ptr [7FF9F5E8D470]
mov       rcx,r14
call      CORINFO_HELP_THROW
M00_L31
 
movzx     ecx,byte ptr [rbp-40]
test      cl,cl
je        near ptr M00_L06
lea       rcx,[rbp-40]
call      qword ptr [7FF9F5E847B0]
mov       edi,eax
jmp       near ptr M00_L07
M00_L32
 
call      qword ptr [7FF9F63552A8]
mov       r15,rax
test      r15,r15
jne       short M00_L33
call      qword ptr [7FF9F63550C8]
mov       r15,rax
M00_L33
 
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,1DB829B4368
mov       r8,r15
call      qword ptr [7FF9F5E8D470]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M00_L34
 
mov       ecx,2
call      qword ptr [7FF9F603ED00]
int       3
M00_L35
 
mov       rcx,7FF9F5D15120
mov       edx,2D
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,19AF0C02000
mov       rdi,[rcx]
jmp       near ptr M00_L08
M00_L36
 
mov       rcx,7FF9F5D15120
mov       edx,20
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,19AF0C02008
mov       rsi,[rcx]
jmp       near ptr M00_L09
M00_L37
 
mov       rcx,rsi
mov       r11,7FF9F5C910D8
call      qword ptr [r11]
jmp       near ptr M00_L25
M00_L38
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+90]
cmp       qword ptr [rbp-60],0
je        short M00_L39
mov       rsi,[rbp-60]
mov       r14,[rsi]
mov       r15,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       r14,r15
je        short M00_L39
mov       rcx,rsi
mov       r11,7FF9F5C910D8
call      qword ptr [r11]
M00_L39
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
sub       rsp,28
movzx     ecx,cx
call      qword ptr [7FFA534A7370]; Precode of System.Globalization.CharUnicodeInfo.GetCategoryCasingTableOffsetNoBoundsChecks(UInt32)
mov       rcx,[7FFA534C0750]
cmp       byte ptr [rcx+rax],0
setl      al
movzx     eax,al
add       rsp,28
ret
 
System.RuntimeType.IsEnumDefined(System.Object)
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,20
vzeroupper
mov       rbx,rcx
mov       rsi,rdx
M02_L00
 
test      rsi,rsi
je        near ptr M02_L30
mov       rcx,[rbx+18]
mov       rax,rcx
test      cl,2
jne       short M02_L01
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M02_L02
M02_L01
 
xor       ecx,ecx
M02_L02
 
movzx     ecx,cl
test      ecx,ecx
je        near ptr M02_L32
mov       rcx,rsi
call      System.Object.GetType()
mov       rdi,rax
mov       rcx,[rdi+18]
mov       rax,rcx
test      cl,2
jne       short M02_L03
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M02_L04
M02_L03
 
xor       ecx,ecx
M02_L04
 
movzx     ecx,cl
test      ecx,ecx
je        short M02_L08
cmp       rbx,rdi
jne       near ptr M02_L31
M02_L05
 
mov       rcx,[rdi+18]
mov       rax,rcx
mov       rdx,rax
test      al,2
jne       short M02_L06
mov       rax,[rdx+10]
mov       rdx,offset MT_System.Enum
cmp       rax,rdx
sete      al
movzx     eax,al
jmp       short M02_L07
M02_L06
 
xor       eax,eax
M02_L07
 
movzx     eax,al
test      eax,eax
je        near ptr M02_L32
mov       rax,19AF0C000A0
mov       rbp,[rax]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M02_L58
mov       ecx,eax
mov       rcx,[rbp+rcx*8+10]
mov       rdi,rcx
M02_L08
 
mov       rcx,1DB829B0020
cmp       rdi,rcx
je        near ptr M02_L33
mov       rcx,rdi
call      qword ptr [7FF9F5D26070]; System.Type.IsIntegerType(System.Type)
test      eax,eax
je        near ptr M02_L35
mov       rcx,19AF0C000A0
mov       rbp,[rcx]
mov       rcx,[rbx+18]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M02_L58
mov       ecx,eax
mov       rbp,[rbp+rcx*8+10]
cmp       rbp,rdi
jne       near ptr M02_L36
test      rbp,rbp
je        near ptr M02_L20
mov       rcx,[rbp+10]
test      rcx,rcx
je        near ptr M02_L16
mov       rax,[rcx]
test      rax,rax
je        near ptr M02_L16
M02_L09
 
mov       r14d,[rax+90]
test      r14d,r14d
je        near ptr M02_L37
M02_L10
 
add       r14d,0FFFFFFFC
cmp       r14d,5
jne       near ptr M02_L57
mov       rdx,offset MT_System.Int32
cmp       [rsi],rdx
je        short M02_L11
mov       rdx,rsi
mov       rcx,offset MT_System.Int32
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
M02_L11
 
mov       r15d,[rsi+8]
mov       rcx,[rbx+10]
test      rcx,rcx
je        short M02_L19
mov       rcx,[rcx]
M02_L12
 
test      rcx,rcx
je        short M02_L15
mov       rax,[rcx+78]
M02_L13
 
test      rax,rax
je        short M02_L14
mov       rcx,offset MT_System.Enum+EnumInfo`1[[System.UInt32, System.Private.CoreLib]]
cmp       [rax],rcx
je        short M02_L17
M02_L14
 
mov       rcx,rbx
xor       edx,edx
call      qword ptr [7FF9F61F7528]; System.Enum.g__InitializeEnumInfo|7_0[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, Boolean)
jmp       short M02_L17
M02_L15
 
xor       eax,eax
jmp       short M02_L13
M02_L16
 
mov       rcx,rbp
call      qword ptr [7FF9F5D26658]; System.RuntimeType.InitializeCache()
jmp       near ptr M02_L09
M02_L17
 
mov       r13,[rax+8]
cmp       byte ptr [rax+19],0
je        near ptr M02_L21
mov       eax,r15d
mov       ecx,[r13+8]
cmp       rcx,rax
seta      al
movzx     eax,al
M02_L18
 
add       rsp,20
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
ret
M02_L19
 
xor       ecx,ecx
jmp       short M02_L12
M02_L20
 
xor       r14d,r14d
jmp       near ptr M02_L10
mov       rdx,rsi
mov       rcx,offset MT_System.SByte
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A2CD50]
jmp       short M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.Byte
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A2CD50]
jmp       short M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.Int16
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A2CD38]
jmp       short M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.UInt16
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A2CD38]
jmp       near ptr M02_L18
M02_L21
 
test      r13,r13
jne       short M02_L22
xor       ecx,ecx
xor       r8d,r8d
jmp       short M02_L23
M02_L22
 
lea       rcx,[r13+10]
mov       r8d,[r13+8]
M02_L23
 
cmp       dword ptr [r13+8],20
jle       short M02_L24
mov       edx,r8d
mov       r8d,r15d
call      qword ptr [7FF9F6A2EAC0]
jmp       short M02_L25
M02_L24
 
mov       edx,r15d
call      qword ptr [7FF9F6A2EF88]; System.SpanHelpers.NonPackedIndexOfValueType[[System.Int32, System.Private.CoreLib],[System.SpanHelpers+DontNegate`1[[System.Int32, System.Private.CoreLib]], System.Private.CoreLib]](Int32 ByRef, Int32, Int32)
M02_L25
 
not       eax
shr       eax,1F
jmp       near ptr M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.UInt32
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       edx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F689D9B0]; System.Enum.IsDefinedPrimitive[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, UInt32)
jmp       near ptr M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.Int64
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A2C630]
jmp       near ptr M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.UInt64
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A2C630]
jmp       near ptr M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.Single
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovss    xmm1,dword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A27E28]
jmp       near ptr M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.Double
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovsd    xmm1,qword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A27E10]
jmp       near ptr M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.Char
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A2CD68]
jmp       near ptr M02_L18
M02_L26
 
mov       rcx,1DB829B4010
cmp       rbp,rcx
je        short M02_L28
mov       rcx,1DB829B6560
cmp       rbp,rcx
je        short M02_L27
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63B5170]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F6066718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L27
 
mov       rdx,rsi
mov       rcx,offset MT_System.UIntPtr
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A27708]
jmp       short M02_L29
M02_L28
 
mov       rdx,rsi
mov       rcx,offset MT_System.IntPtr
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A27708]
M02_L29
 
movzx     eax,al
jmp       near ptr M02_L18
M02_L30
 
mov       ecx,2E5
mov       rdx,7FF9F5C84000
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FF9F60666E8]
int       3
M02_L31
 
mov       rcx,rdi
mov       rdx,rbx
call      System.RuntimeTypeHandle.IsEquivalentTo(System.RuntimeType, System.RuntimeType)
test      eax,eax
jne       near ptr M02_L05
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F638CD98]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbx
call      qword ptr [7FF9F638C768]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F5DDF708]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L32
 
call      qword ptr [7FF9F5D27138]
int       3
M02_L33
 
mov       rcx,rbx
call      qword ptr [7FF9F5D24918]; System.Enum.GetNamesNoCopy(System.RuntimeType)
mov       r8,rsi
mov       rcx,offset MT_System.String
cmp       [r8],rcx
je        short M02_L34
mov       rdx,rsi
call      qword ptr [7FF9F5DD43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M02_L34
 
mov       rdx,rax
mov       rcx,offset MD_System.Array.IndexOf[[System.String, System.Private.CoreLib]](System.String[], System.String)
call      qword ptr [7FF9F689D980]
not       eax
shr       eax,1F
add       rsp,20
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
ret
M02_L35
 
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63B5170]
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F6066718]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M02_L36
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
call      qword ptr [7FF9F638CDF8]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbp
call      qword ptr [7FF9F638C768]
mov       rdx,rax
mov       rcx,r14
call      qword ptr [7FF9F5DDF708]
mov       rcx,r14
call      CORINFO_HELP_THROW
M02_L37
 
mov       r13,rbp
mov       rcx,r13
call      qword ptr [7FF9F5D26AA8]; System.RuntimeType.get_IsActualEnum()
test      eax,eax
je        short M02_L38
mov       rcx,rbp
call      qword ptr [7FF9F5D1A728]; System.RuntimeType.GetEnumUnderlyingType()
mov       r13,rax
test      r13,r13
je        short M02_L38
mov       rcx,offset MT_System.RuntimeType
cmp       [r13],rcx
je        short M02_L38
mov       rdx,rax
call      qword ptr [7FF9F5DD43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M02_L38
 
mov       rcx,1DB829B6498
cmp       r13,rcx
jne       short M02_L39
mov       r14d,5
jmp       near ptr M02_L54
M02_L39
 
mov       rcx,1DB829B4198
cmp       r13,rcx
jne       short M02_L40
mov       r14d,6
jmp       near ptr M02_L54
M02_L40
 
mov       rcx,1DB829B64C0
cmp       r13,rcx
jne       short M02_L41
mov       r14d,7
jmp       near ptr M02_L54
M02_L41
 
mov       rcx,1DB829B4038
cmp       r13,rcx
jne       short M02_L42
mov       r14d,8
jmp       near ptr M02_L54
M02_L42
 
mov       rcx,1DB829B4248
cmp       r13,rcx
jne       short M02_L43
mov       r14d,9
jmp       near ptr M02_L54
M02_L43
 
mov       rcx,1DB829B3F48
cmp       r13,rcx
jne       short M02_L44
mov       r14d,0A
jmp       near ptr M02_L54
M02_L44
 
mov       rcx,1DB829B64E8
cmp       r13,rcx
jne       short M02_L45
mov       r14d,0B
jmp       near ptr M02_L54
M02_L45
 
mov       rcx,1DB829B3D90
cmp       r13,rcx
jne       short M02_L46
mov       r14d,0C
jmp       near ptr M02_L54
M02_L46
 
mov       rcx,1DB829B6448
cmp       r13,rcx
jne       short M02_L47
mov       r14d,3
jmp       near ptr M02_L54
M02_L47
 
mov       rcx,1DB829B6470
cmp       r13,rcx
jne       short M02_L48
mov       r14d,4
jmp       near ptr M02_L54
M02_L48
 
mov       rcx,1DB829B6510
cmp       r13,rcx
jne       short M02_L49
mov       r14d,0D
jmp       short M02_L54
M02_L49
 
mov       rcx,1DB829B6538
cmp       r13,rcx
jne       short M02_L50
mov       r14d,0E
jmp       short M02_L54
M02_L50
 
mov       rcx,1DB829B71E0
cmp       r13,rcx
jne       short M02_L51
mov       r14d,0F
jmp       short M02_L54
M02_L51
 
mov       rcx,1DB829B3C08
cmp       r13,rcx
jne       short M02_L52
mov       r14d,10
jmp       short M02_L54
M02_L52
 
mov       rcx,1DB829B0020
cmp       r13,rcx
jne       short M02_L53
mov       r14d,12
jmp       short M02_L54
M02_L53
 
mov       rcx,1DB829C53E0
mov       r14d,1
mov       eax,2
cmp       r13,rcx
cmove     r14d,eax
M02_L54
 
cmp       qword ptr [rbp+10],0
je        short M02_L55
mov       rcx,[rbp+10]
mov       rax,[rcx]
test      rax,rax
je        short M02_L55
jmp       short M02_L56
M02_L55
 
mov       rcx,rbp
call      qword ptr [7FF9F5D26658]; System.RuntimeType.InitializeCache()
M02_L56
 
mov       [rax+90],r14d
jmp       near ptr M02_L10
M02_L57
 
cmp       r14d,0A
ja        near ptr M02_L26
mov       edx,r14d
lea       rcx,[7FF9F693FB90]
mov       ecx,[rcx+rdx*4]
lea       rax,[M02_L00]
add       rcx,rax
jmp       rcx
M02_L58
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,98
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
vmovdqa   xmmword ptr [rbp+20],xmm4
vmovdqa   xmmword ptr [rbp+30],xmm4
vmovdqa   xmmword ptr [rbp+40],xmm4
vmovdqa   xmmword ptr [rbp+50],xmm4
mov       [rbp+60],rax
mov       rax,198F4D748625
mov       [rbp],rax
mov       rsi,rcx
mov       rbx,rdx
mov       edi,r8d
mov       r14d,r9d
test      edi,edi
jl        near ptr M03_L06
test      r14d,0FFFFFFFC
jne       near ptr M03_L07
M03_L00
 
cmp       edi,1
jle       near ptr M03_L08
mov       r15d,[rsi+8]
test      r15d,r15d
je        near ptr M03_L08
cmp       dword ptr [rbx+8],0
je        near ptr M03_L10
M03_L01
 
test      [rsp],esp
sub       rsp,200
lea       rcx,[rsp+30]
mov       [rbp+58],rcx
mov       dword ptr [rbp+60],80
xor       ecx,ecx
mov       [rbp+48],rcx
mov       [rbp+50],ecx
lea       rcx,[rsi+0C]
mov       [rbp+38],rcx
mov       [rbp+40],r15d
vmovdqu   xmm0,xmmword ptr [rbx]
vmovdqu   xmmword ptr [rbp+28],xmm0
lea       rcx,[rbp+38]
lea       rdx,[rbp+28]
lea       r8,[rbp+48]
call      qword ptr [7FF9F5DD71B0]; System.String.MakeSeparatorListAny(System.ReadOnlySpan`1, System.ReadOnlySpan`1, System.Collections.Generic.ValueListBuilder`1 ByRef)
mov       eax,[rbp+50]
cmp       eax,[rbp+60]
ja        near ptr M03_L11
mov       r10,[rbp+58]
test      eax,eax
je        near ptr M03_L12
test      r14d,r14d
je        near ptr M03_L05
xor       ecx,ecx
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],rcx
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       [rsp+28],r14d
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DD7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       rbx,rax
M03_L02
 
mov       rdx,[rbp+48]
test      rdx,rdx
je        short M03_L03
xor       ecx,ecx
mov       [rbp+48],rcx
mov       rcx,19AF0C01F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65D5168]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M03_L03
 
mov       rax,rbx
mov       rcx,198F4D748625
cmp       [rbp],rcx
je        short M03_L04
call      CORINFO_HELP_FAIL_FAST
M03_L04
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L05
 
xor       r14d,r14d
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],r14
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DD7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       rbx,rax
jmp       short M03_L02
M03_L06
 
mov       ecx,1C7
mov       rdx,7FF9F5C84000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,edi
call      qword ptr [7FF9F68C47E0]
int       3
M03_L07
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F603ECB8]
int       3
M03_L08
 
mov       rcx,rsi
mov       edx,r14d
mov       r8d,edi
call      qword ptr [7FF9F5DD7150]; System.String.CreateSplitArrayOfThisAsSoleValue(System.StringSplitOptions, Int32)
mov       rcx,198F4D748625
cmp       [rbp],rcx
je        short M03_L09
call      CORINFO_HELP_FAIL_FAST
M03_L09
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L10
 
cmp       r15d,edi
jge       near ptr M03_L01
and       r14d,0FFFFFFFD
jmp       near ptr M03_L01
M03_L11
 
call      qword ptr [7FF9F603E9D0]
int       3
M03_L12
 
mov       edi,1
jmp       near ptr M03_L00
 
System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,edx
mov       edi,[rbx+8]
lea       ebp,[rdi-1]
mov       r14d,ebp
xor       r15d,r15d
test      sil,1
je        short M04_L03
xor       r15d,r15d
test      edi,edi
jle       short M04_L03
M04_L00
 
mov       ecx,r15d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L01
mov       rax,[7FFA534C0728]
test      byte ptr [rax+rcx],80
je        short M04_L03
jmp       short M04_L02
M04_L01
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L03
M04_L02
 
inc       r15d
cmp       edi,r15d
jg        short M04_L00
M04_L03
 
test      sil,2
je        near ptr M04_L10
mov       r14d,ebp
cmp       r14d,r15d
jl        short M04_L10
mov       ecx,r14d
or        ecx,r15d
jl        short M04_L07
cmp       edi,r14d
jle       short M04_L07
M04_L04
 
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L05
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L06
M04_L05
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L06
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L04
jmp       short M04_L10
M04_L07
 
cmp       r14d,edi
jae       short M04_L14
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L08
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L09
M04_L08
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L09
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L07
M04_L10
 
mov       r8d,r14d
sub       r8d,r15d
inc       r8d
cmp       edi,r8d
jne       short M04_L12
mov       rax,rbx
M04_L11
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L12
 
test      r8d,r8d
je        short M04_L13
mov       rcx,rbx
mov       edx,r15d
call      qword ptr [7FFA534A34A0]; Precode of System.String.InternalSubString(Int32, Int32)
jmp       short M04_L11
M04_L13
 
mov       rax,[7FFA534C08A0]
mov       rax,[rax]
jmp       short M04_L11
M04_L14
 
call      qword ptr [7FFA53493D20]; CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.SplitWithTrimEntriesCount()
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,58
lea       rbp,[rsp+90]
xor       eax,eax
mov       [rbp-58],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
mov       [rbp-40],rax
mov       [rbp-70],rsp
mov       rbx,rcx
mov       rsi,[rbx+298]
test      rsi,rsi
je        short M00_L00
xor       ecx,ecx
cmp       dword ptr [rsi+8],0
sete      cl
test      ecx,ecx
sete      cl
movzx     ecx,cl
cmp       dword ptr [rsi+8],0
jne       short M00_L01
jmp       short M00_L01
M00_L00
 
xor       ecx,ecx
M00_L01
 
test      ecx,ecx
je        near ptr M00_L26
cmp       dword ptr [rsi+8],0
je        short M00_L05
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       short M00_L03
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L28
M00_L02
 
mov       ecx,[rsi+8]
dec       ecx
cmp       ecx,[rsi+8]
jae       near ptr M00_L38
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L04
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L28
jmp       short M00_L05
M00_L03
 
call      qword ptr [7FF9F673E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L28
jmp       short M00_L02
M00_L04
 
call      qword ptr [7FF9F673E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L28
M00_L05
 
mov       rcx,offset MT_System.StringSplitOptions
call      CORINFO_HELP_NEWSFAST
mov       dword ptr [rax+8],2
mov       rdx,rax
mov       rcx,21C8D2177F8
cmp       [rcx],ecx
call      qword ptr [7FF9F5D2A770]; System.RuntimeType.IsEnumDefined(System.Object)
test      eax,eax
je        near ptr M00_L29
xor       ecx,ecx
mov       [rbp-40],rcx
mov       edi,0A
mov       ecx,1
mov       eax,ecx
test      ecx,ecx
je        near ptr M00_L31
M00_L06
 
test      eax,eax
je        near ptr M00_L32
M00_L07
 
mov       rcx,offset MT_System.Char[]
mov       edx,1
call      CORINFO_HELP_NEWARR_1_VC
mov       word ptr [rax+10],2E
cmp       [rsi],sil
add       rax,10
mov       rcx,rsi
mov       [rbp-58],rax
mov       dword ptr [rbp-50],1
lea       rdx,[rbp-58]
mov       r8d,edi
mov       r9d,2
call      qword ptr [7FF9F5DE70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
mov       rsi,rax
test      rsi,rsi
je        near ptr M00_L34
cmp       dword ptr [rsi+8],0
je        near ptr M00_L35
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyCollection`1[[System.String, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
M00_L08
 
mov       rcx,[rdi+8]
mov       r11,7FF9F5CA10E0
call      qword ptr [r11]
test      eax,eax
je        near ptr M00_L36
mov       rcx,[rdi+8]
mov       r11,7FF9F5CA10E8
call      qword ptr [r11]
mov       rsi,rax
M00_L09
 
mov       [rbp-60],rsi
test      rsi,rsi
je        near ptr M00_L18
mov       r14,[rsi]
mov       r15,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       r14,r15
jne       near ptr M00_L18
jmp       short M00_L12
M00_L10
 
mov       r10,rsi
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       near ptr M00_L21
mov       r13,[r10+10]
cmp       r9d,[r13+8]
jae       short M00_L13
mov       ecx,r9d
mov       r12,[r13+rcx*8+10]
M00_L11
 
mov       [rbp-48],r12
mov       r12,[rbx+18]
mov       rdx,[rbp-48]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
M00_L12
 
cmp       r14,r15
jne       short M00_L15
mov       rax,rsi
mov       r8d,[rax+8]
inc       r8d
mov       edi,[rax+0C]
cmp       r8d,edi
jae       short M00_L14
mov       [rax+8],r8d
jmp       short M00_L10
M00_L13
 
call      CORINFO_HELP_RNGCHKFAIL
M00_L14
 
mov       [rax+8],edi
jmp       near ptr M00_L24
M00_L15
 
mov       rcx,rsi
mov       r11,7FF9F5CA10C8
call      qword ptr [r11]
test      eax,eax
jne       near ptr M00_L22
jmp       near ptr M00_L24
M00_L16
 
mov       r10,rsi
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       short M00_L21
mov       r13,[r10+10]
cmp       r9d,[r13+8]
jae       short M00_L13
mov       ecx,r9d
mov       r12,[r13+rcx*8+10]
M00_L17
 
mov       [rbp-48],r12
mov       r12,[rbx+18]
mov       rdx,[rbp-48]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
M00_L18
 
mov       r14,[rsi]
mov       r15,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       r14,r15
jne       short M00_L19
mov       rax,rsi
mov       r8d,[rax+8]
inc       r8d
mov       edi,[rax+0C]
cmp       r8d,edi
jae       short M00_L20
mov       [rax+8],r8d
jmp       short M00_L16
M00_L19
 
mov       rcx,rsi
mov       r11,7FF9F5CA10C8
call      qword ptr [r11]
test      eax,eax
jne       short M00_L23
jmp       short M00_L24
M00_L20
 
mov       [rax+8],edi
jmp       short M00_L24
M00_L21
 
mov       ecx,[r10+8]
call      qword ptr [7FF9F604EFD0]
int       3
M00_L22
 
mov       rcx,rsi
mov       r11,7FF9F5CA10D0
call      qword ptr [r11]
mov       r12,rax
jmp       near ptr M00_L11
M00_L23
 
mov       rcx,rsi
mov       r11,7FF9F5CA10D0
call      qword ptr [r11]
mov       r12,rax
jmp       near ptr M00_L17
M00_L24
 
cmp       r14,r15
jne       near ptr M00_L37
M00_L25
 
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M00_L26
 
call      qword ptr [7FF9F6365368]
mov       rsi,rax
test      rsi,rsi
jne       short M00_L27
call      qword ptr [7FF9F63650B0]
mov       rsi,rax
M00_L27
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,21C8D208468
mov       r8,rsi
call      qword ptr [7FF9F6076670]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M00_L28
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DE73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L05
M00_L29
 
call      qword ptr [7FF9F6365170]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L30
call      qword ptr [7FF9F63650C8]
mov       rbx,rax
M00_L30
 
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,21C8D209EE0
mov       r8,rbx
call      qword ptr [7FF9F5E9D470]
mov       rcx,r14
call      CORINFO_HELP_THROW
M00_L31
 
movzx     ecx,byte ptr [rbp-40]
test      cl,cl
je        near ptr M00_L06
lea       rcx,[rbp-40]
call      qword ptr [7FF9F5E947B0]
mov       edi,eax
jmp       near ptr M00_L07
M00_L32
 
call      qword ptr [7FF9F63652A8]
mov       r15,rax
test      r15,r15
jne       short M00_L33
call      qword ptr [7FF9F63650C8]
mov       r15,rax
M00_L33
 
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,21C8D204368
mov       r8,r15
call      qword ptr [7FF9F5E9D470]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M00_L34
 
mov       ecx,2
call      qword ptr [7FF9F604ED00]
int       3
M00_L35
 
mov       rcx,7FF9F5D25120
mov       edx,2D
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,1DBFF402000
mov       rdi,[rcx]
jmp       near ptr M00_L08
M00_L36
 
mov       rcx,7FF9F5D25120
mov       edx,20
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,1DBFF402008
mov       rsi,[rcx]
jmp       near ptr M00_L09
M00_L37
 
mov       rcx,rsi
mov       r11,7FF9F5CA10D8
call      qword ptr [r11]
jmp       near ptr M00_L25
M00_L38
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+90]
cmp       qword ptr [rbp-60],0
je        short M00_L39
mov       rsi,[rbp-60]
mov       r14,[rsi]
mov       r15,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       r14,r15
je        short M00_L39
mov       rcx,rsi
mov       r11,7FF9F5CA10D8
call      qword ptr [r11]
M00_L39
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
sub       rsp,28
movzx     ecx,cx
call      qword ptr [7FFA534A7370]; Precode of System.Globalization.CharUnicodeInfo.GetCategoryCasingTableOffsetNoBoundsChecks(UInt32)
mov       rcx,[7FFA534C0750]
cmp       byte ptr [rcx+rax],0
setl      al
movzx     eax,al
add       rsp,28
ret
 
System.RuntimeType.IsEnumDefined(System.Object)
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,20
vzeroupper
mov       rbx,rcx
mov       rsi,rdx
M02_L00
 
test      rsi,rsi
je        near ptr M02_L53
mov       rcx,[rbx+18]
mov       rax,rcx
test      cl,2
jne       short M02_L01
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M02_L02
M02_L01
 
xor       ecx,ecx
M02_L02
 
movzx     ecx,cl
test      ecx,ecx
je        near ptr M02_L55
mov       rcx,rsi
call      System.Object.GetType()
mov       rdi,rax
mov       rcx,[rdi+18]
mov       rax,rcx
test      cl,2
jne       short M02_L03
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M02_L04
M02_L03
 
xor       ecx,ecx
M02_L04
 
movzx     ecx,cl
test      ecx,ecx
je        short M02_L08
cmp       rbx,rdi
jne       near ptr M02_L54
M02_L05
 
mov       rcx,[rdi+18]
mov       rax,rcx
mov       rdx,rax
test      al,2
jne       short M02_L06
mov       rax,[rdx+10]
mov       rdx,offset MT_System.Enum
cmp       rax,rdx
sete      al
movzx     eax,al
jmp       short M02_L07
M02_L06
 
xor       eax,eax
M02_L07
 
movzx     eax,al
test      eax,eax
je        near ptr M02_L55
mov       rax,1DBFF4000A0
mov       rbp,[rax]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M02_L62
mov       ecx,eax
mov       rcx,[rbp+rcx*8+10]
mov       rdi,rcx
M02_L08
 
mov       rcx,21C8D200020
cmp       rdi,rcx
je        near ptr M02_L56
mov       rcx,rdi
call      qword ptr [7FF9F5D36070]; System.Type.IsIntegerType(System.Type)
test      eax,eax
je        near ptr M02_L58
mov       rcx,1DBFF4000A0
mov       rbp,[rcx]
mov       rcx,[rbx+18]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M02_L62
mov       ecx,eax
mov       rbp,[rbp+rcx*8+10]
cmp       rbp,rdi
jne       near ptr M02_L59
test      rbp,rbp
je        near ptr M02_L24
mov       rcx,[rbp+10]
test      rcx,rcx
je        near ptr M02_L18
mov       rax,[rcx]
test      rax,rax
je        near ptr M02_L18
M02_L09
 
mov       r14d,[rax+90]
test      r14d,r14d
je        near ptr M02_L20
M02_L10
 
add       r14d,0FFFFFFFC
cmp       r14d,5
jne       near ptr M02_L60
mov       rdx,offset MT_System.Int32
cmp       [rsi],rdx
je        short M02_L11
mov       rdx,rsi
mov       rcx,offset MT_System.Int32
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
M02_L11
 
mov       r15d,[rsi+8]
mov       rcx,[rbx+10]
test      rcx,rcx
je        short M02_L19
mov       rcx,[rcx]
M02_L12
 
test      rcx,rcx
je        short M02_L15
mov       rax,[rcx+78]
M02_L13
 
test      rax,rax
je        short M02_L14
mov       rcx,offset MT_System.Enum+EnumInfo`1[[System.UInt32, System.Private.CoreLib]]
cmp       [rax],rcx
je        short M02_L16
M02_L14
 
mov       rcx,rbx
xor       edx,edx
call      qword ptr [7FF9F6207528]; System.Enum.g__InitializeEnumInfo|7_0[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, Boolean)
jmp       short M02_L16
M02_L15
 
xor       eax,eax
jmp       short M02_L13
M02_L16
 
mov       r13,[rax+8]
cmp       byte ptr [rax+19],0
je        near ptr M02_L44
mov       eax,r15d
mov       ecx,[r13+8]
cmp       rcx,rax
seta      al
movzx     eax,al
M02_L17
 
add       rsp,20
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
ret
M02_L18
 
mov       rcx,rbp
call      qword ptr [7FF9F5D36658]; System.RuntimeType.InitializeCache()
jmp       near ptr M02_L09
M02_L19
 
xor       ecx,ecx
jmp       short M02_L12
M02_L20
 
mov       r14,rbp
mov       rcx,r14
call      qword ptr [7FF9F5D36AA8]; System.RuntimeType.get_IsActualEnum()
test      eax,eax
jne       near ptr M02_L25
M02_L21
 
mov       rcx,21C8D206498
cmp       r14,rcx
je        near ptr M02_L40
mov       rcx,21C8D204198
cmp       r14,rcx
je        near ptr M02_L28
mov       rcx,21C8D2064C0
cmp       r14,rcx
je        near ptr M02_L39
mov       rcx,21C8D204038
cmp       r14,rcx
je        near ptr M02_L36
mov       rcx,21C8D204248
cmp       r14,rcx
je        near ptr M02_L27
mov       rcx,21C8D203F48
cmp       r14,rcx
je        near ptr M02_L29
mov       rcx,21C8D2064E8
cmp       r14,rcx
je        near ptr M02_L35
mov       rcx,21C8D203D90
cmp       r14,rcx
je        near ptr M02_L34
mov       rcx,21C8D206448
cmp       r14,rcx
je        near ptr M02_L33
mov       rcx,21C8D206470
cmp       r14,rcx
je        near ptr M02_L43
mov       rcx,21C8D206510
cmp       r14,rcx
je        near ptr M02_L38
mov       rcx,21C8D206538
cmp       r14,rcx
je        near ptr M02_L32
mov       rcx,21C8D2071E0
cmp       r14,rcx
je        near ptr M02_L42
mov       rcx,21C8D203C08
cmp       r14,rcx
je        near ptr M02_L41
mov       rcx,21C8D200020
cmp       r14,rcx
je        near ptr M02_L31
mov       rcx,21C8D2153E0
mov       r15d,1
mov       eax,2
cmp       r14,rcx
cmove     r15d,eax
M02_L22
 
mov       r14d,r15d
mov       rcx,[rbp+10]
test      rcx,rcx
je        near ptr M02_L37
mov       rax,[rcx]
test      rax,rax
je        near ptr M02_L37
M02_L23
 
mov       [rax+90],r14d
jmp       near ptr M02_L10
M02_L24
 
xor       r14d,r14d
jmp       near ptr M02_L10
M02_L25
 
mov       rcx,rbp
call      qword ptr [7FF9F5D2A728]; System.RuntimeType.GetEnumUnderlyingType()
mov       r14,rax
test      r14,r14
jne       short M02_L30
M02_L26
 
jmp       near ptr M02_L21
M02_L27
 
mov       r15d,9
jmp       short M02_L22
M02_L28
 
mov       r15d,6
jmp       short M02_L22
M02_L29
 
mov       r15d,0A
jmp       short M02_L22
M02_L30
 
mov       rcx,offset MT_System.RuntimeType
cmp       [r14],rcx
jne       near ptr M02_L61
jmp       short M02_L26
M02_L31
 
mov       r15d,12
jmp       short M02_L22
M02_L32
 
mov       r15d,0E
jmp       near ptr M02_L22
M02_L33
 
mov       r15d,3
jmp       near ptr M02_L22
M02_L34
 
mov       r15d,0C
jmp       near ptr M02_L22
M02_L35
 
mov       r15d,0B
jmp       near ptr M02_L22
M02_L36
 
mov       r15d,8
jmp       near ptr M02_L22
M02_L37
 
mov       rcx,rbp
call      qword ptr [7FF9F5D36658]; System.RuntimeType.InitializeCache()
jmp       near ptr M02_L23
M02_L38
 
mov       r15d,0D
jmp       near ptr M02_L22
M02_L39
 
mov       r15d,7
jmp       near ptr M02_L22
M02_L40
 
mov       r15d,5
jmp       near ptr M02_L22
M02_L41
 
mov       r15d,10
jmp       near ptr M02_L22
M02_L42
 
mov       r15d,0F
jmp       near ptr M02_L22
M02_L43
 
mov       r15d,4
jmp       near ptr M02_L22
mov       rdx,rsi
mov       rcx,offset MT_System.SByte
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A3CD50]
jmp       near ptr M02_L17
mov       rdx,rsi
mov       rcx,offset MT_System.Byte
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A3CD50]
jmp       near ptr M02_L17
mov       rdx,rsi
mov       rcx,offset MT_System.Int16
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A3CD38]
jmp       near ptr M02_L17
mov       rdx,rsi
mov       rcx,offset MT_System.UInt16
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A3CD38]
jmp       near ptr M02_L17
M02_L44
 
test      r13,r13
jne       short M02_L45
xor       ecx,ecx
xor       r8d,r8d
jmp       short M02_L46
M02_L45
 
lea       rcx,[r13+10]
mov       r8d,[r13+8]
M02_L46
 
cmp       dword ptr [r13+8],20
jle       short M02_L47
mov       edx,r8d
mov       r8d,r15d
call      qword ptr [7FF9F6A3EAC0]
jmp       short M02_L48
M02_L47
 
mov       edx,r15d
call      qword ptr [7FF9F6A3EF88]; System.SpanHelpers.NonPackedIndexOfValueType[[System.Int32, System.Private.CoreLib],[System.SpanHelpers+DontNegate`1[[System.Int32, System.Private.CoreLib]], System.Private.CoreLib]](Int32 ByRef, Int32, Int32)
M02_L48
 
not       eax
shr       eax,1F
jmp       near ptr M02_L17
mov       rdx,rsi
mov       rcx,offset MT_System.UInt32
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       edx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F68AD9B0]; System.Enum.IsDefinedPrimitive[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, UInt32)
jmp       near ptr M02_L17
mov       rdx,rsi
mov       rcx,offset MT_System.Int64
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A3C630]
jmp       near ptr M02_L17
mov       rdx,rsi
mov       rcx,offset MT_System.UInt64
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A3C630]
jmp       near ptr M02_L17
mov       rdx,rsi
mov       rcx,offset MT_System.Single
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovss    xmm1,dword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A37DE0]
jmp       near ptr M02_L17
mov       rdx,rsi
mov       rcx,offset MT_System.Double
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovsd    xmm1,qword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A37DC8]
jmp       near ptr M02_L17
mov       rdx,rsi
mov       rcx,offset MT_System.Char
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A3CD68]
jmp       near ptr M02_L17
M02_L49
 
mov       rcx,21C8D204010
cmp       rbp,rcx
je        short M02_L51
mov       rcx,21C8D206560
cmp       rbp,rcx
je        short M02_L50
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63C5170]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F6076718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L50
 
mov       rdx,rsi
mov       rcx,offset MT_System.UIntPtr
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A376C0]
jmp       short M02_L52
M02_L51
 
mov       rdx,rsi
mov       rcx,offset MT_System.IntPtr
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A376C0]
M02_L52
 
movzx     eax,al
jmp       near ptr M02_L17
M02_L53
 
mov       ecx,2E5
mov       rdx,7FF9F5C94000
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FF9F60766E8]
int       3
M02_L54
 
mov       rcx,rdi
mov       rdx,rbx
call      System.RuntimeTypeHandle.IsEquivalentTo(System.RuntimeType, System.RuntimeType)
test      eax,eax
jne       near ptr M02_L05
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F639CD98]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbx
call      qword ptr [7FF9F639C768]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F5DEF708]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L55
 
call      qword ptr [7FF9F5D37138]
int       3
M02_L56
 
mov       rcx,rbx
call      qword ptr [7FF9F5D34918]; System.Enum.GetNamesNoCopy(System.RuntimeType)
mov       r8,rsi
mov       rcx,offset MT_System.String
cmp       [r8],rcx
je        short M02_L57
mov       rdx,rsi
call      qword ptr [7FF9F5DE43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M02_L57
 
mov       rdx,rax
mov       rcx,offset MD_System.Array.IndexOf[[System.String, System.Private.CoreLib]](System.String[], System.String)
call      qword ptr [7FF9F68AD980]
not       eax
shr       eax,1F
add       rsp,20
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
ret
M02_L58
 
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63C5170]
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F6076718]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M02_L59
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       r13,rax
call      qword ptr [7FF9F639CDF8]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbp
call      qword ptr [7FF9F639C768]
mov       rdx,rax
mov       rcx,r13
call      qword ptr [7FF9F5DEF708]
mov       rcx,r13
call      CORINFO_HELP_THROW
M02_L60
 
cmp       r14d,0A
ja        near ptr M02_L49
mov       edx,r14d
lea       rcx,[7FF9F694EE00]
mov       ecx,[rcx+rdx*4]
lea       rax,[M02_L00]
add       rcx,rax
jmp       rcx
M02_L61
 
mov       rdx,rax
call      qword ptr [7FF9F5DE43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M02_L62
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,98
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
vmovdqa   xmmword ptr [rbp+20],xmm4
vmovdqa   xmmword ptr [rbp+30],xmm4
vmovdqa   xmmword ptr [rbp+40],xmm4
vmovdqa   xmmword ptr [rbp+50],xmm4
mov       [rbp+60],rax
mov       rax,0E1555D762926
mov       [rbp],rax
mov       rsi,rcx
mov       rbx,rdx
mov       edi,r8d
mov       r14d,r9d
test      edi,edi
jl        near ptr M03_L06
test      r14d,0FFFFFFFC
jne       near ptr M03_L07
M03_L00
 
cmp       edi,1
jle       near ptr M03_L08
mov       r15d,[rsi+8]
test      r15d,r15d
je        near ptr M03_L08
cmp       dword ptr [rbx+8],0
je        near ptr M03_L10
M03_L01
 
test      [rsp],esp
sub       rsp,200
lea       rcx,[rsp+30]
mov       [rbp+58],rcx
mov       dword ptr [rbp+60],80
xor       ecx,ecx
mov       [rbp+48],rcx
mov       [rbp+50],ecx
lea       rcx,[rsi+0C]
mov       [rbp+38],rcx
mov       [rbp+40],r15d
vmovdqu   xmm0,xmmword ptr [rbx]
vmovdqu   xmmword ptr [rbp+28],xmm0
lea       rcx,[rbp+38]
lea       rdx,[rbp+28]
lea       r8,[rbp+48]
call      qword ptr [7FF9F5DE71B0]; System.String.MakeSeparatorListAny(System.ReadOnlySpan`1, System.ReadOnlySpan`1, System.Collections.Generic.ValueListBuilder`1 ByRef)
mov       eax,[rbp+50]
cmp       eax,[rbp+60]
ja        near ptr M03_L11
mov       r10,[rbp+58]
test      eax,eax
je        near ptr M03_L12
test      r14d,r14d
je        near ptr M03_L05
xor       ecx,ecx
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],rcx
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       [rsp+28],r14d
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DE7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       rbx,rax
M03_L02
 
mov       rdx,[rbp+48]
test      rdx,rdx
je        short M03_L03
xor       ecx,ecx
mov       [rbp+48],rcx
mov       rcx,1DBFF401F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65E4B98]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M03_L03
 
mov       rax,rbx
mov       rcx,0E1555D762926
cmp       [rbp],rcx
je        short M03_L04
call      CORINFO_HELP_FAIL_FAST
M03_L04
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L05
 
xor       r14d,r14d
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],r14
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DE7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       rbx,rax
jmp       short M03_L02
M03_L06
 
mov       ecx,1C7
mov       rdx,7FF9F5C94000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,edi
call      qword ptr [7FF9F68D47E0]
int       3
M03_L07
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F604ECB8]
int       3
M03_L08
 
mov       rcx,rsi
mov       edx,r14d
mov       r8d,edi
call      qword ptr [7FF9F5DE7150]; System.String.CreateSplitArrayOfThisAsSoleValue(System.StringSplitOptions, Int32)
mov       rcx,0E1555D762926
cmp       [rbp],rcx
je        short M03_L09
call      CORINFO_HELP_FAIL_FAST
M03_L09
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L10
 
cmp       r15d,edi
jge       near ptr M03_L01
and       r14d,0FFFFFFFD
jmp       near ptr M03_L01
M03_L11
 
call      qword ptr [7FF9F604E9D0]
int       3
M03_L12
 
mov       edi,1
jmp       near ptr M03_L00
 
System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,edx
mov       edi,[rbx+8]
lea       ebp,[rdi-1]
mov       r14d,ebp
xor       r15d,r15d
test      sil,1
je        short M04_L03
xor       r15d,r15d
test      edi,edi
jle       short M04_L03
M04_L00
 
mov       ecx,r15d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L01
mov       rax,[7FFA534C0728]
test      byte ptr [rax+rcx],80
je        short M04_L03
jmp       short M04_L02
M04_L01
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L03
M04_L02
 
inc       r15d
cmp       edi,r15d
jg        short M04_L00
M04_L03
 
test      sil,2
je        near ptr M04_L10
mov       r14d,ebp
cmp       r14d,r15d
jl        short M04_L10
mov       ecx,r14d
or        ecx,r15d
jl        short M04_L07
cmp       edi,r14d
jle       short M04_L07
M04_L04
 
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L05
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L06
M04_L05
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L06
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L04
jmp       short M04_L10
M04_L07
 
cmp       r14d,edi
jae       short M04_L14
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L08
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L09
M04_L08
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L09
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L07
M04_L10
 
mov       r8d,r14d
sub       r8d,r15d
inc       r8d
cmp       edi,r8d
jne       short M04_L12
mov       rax,rbx
M04_L11
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L12
 
test      r8d,r8d
je        short M04_L13
mov       rcx,rbx
mov       edx,r15d
call      qword ptr [7FFA534A34A0]; Precode of System.String.InternalSubString(Int32, Int32)
jmp       short M04_L11
M04_L13
 
mov       rax,[7FFA534C08A0]
mov       rax,[rax]
jmp       short M04_L11
M04_L14
 
call      qword ptr [7FFA53493D20]; CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.SplitWithTrimEntriesCount()
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,58
lea       rbp,[rsp+90]
xor       eax,eax
mov       [rbp-58],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
mov       [rbp-40],rax
mov       [rbp-70],rsp
mov       rbx,rcx
mov       rsi,[rbx+298]
test      rsi,rsi
je        short M00_L00
xor       ecx,ecx
cmp       dword ptr [rsi+8],0
sete      cl
test      ecx,ecx
sete      cl
movzx     ecx,cl
cmp       dword ptr [rsi+8],0
jne       short M00_L01
jmp       short M00_L01
M00_L00
 
xor       ecx,ecx
M00_L01
 
test      ecx,ecx
je        near ptr M00_L26
cmp       dword ptr [rsi+8],0
je        short M00_L05
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       short M00_L02
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L28
jmp       short M00_L03
M00_L02
 
call      qword ptr [7FF9F672E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L28
M00_L03
 
mov       ecx,[rsi+8]
dec       ecx
cmp       ecx,[rsi+8]
jae       near ptr M00_L38
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L04
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L28
jmp       short M00_L05
M00_L04
 
call      qword ptr [7FF9F672E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L28
M00_L05
 
mov       rcx,offset MT_System.StringSplitOptions
call      CORINFO_HELP_NEWSFAST
mov       dword ptr [rax+8],2
mov       rdx,rax
mov       rcx,275160B77F8
cmp       [rcx],ecx
call      qword ptr [7FF9F5D1A770]; System.RuntimeType.IsEnumDefined(System.Object)
test      eax,eax
je        near ptr M00_L29
xor       ecx,ecx
mov       [rbp-40],rcx
mov       edi,0A
mov       ecx,1
mov       eax,ecx
test      ecx,ecx
je        near ptr M00_L31
M00_L06
 
test      eax,eax
je        near ptr M00_L32
M00_L07
 
mov       rcx,offset MT_System.Char[]
mov       edx,1
call      CORINFO_HELP_NEWARR_1_VC
mov       word ptr [rax+10],2E
cmp       [rsi],sil
add       rax,10
mov       rcx,rsi
mov       [rbp-58],rax
mov       dword ptr [rbp-50],1
lea       rdx,[rbp-58]
mov       r8d,edi
mov       r9d,2
call      qword ptr [7FF9F5DD70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
mov       rsi,rax
test      rsi,rsi
je        near ptr M00_L34
cmp       dword ptr [rsi+8],0
je        near ptr M00_L35
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyCollection`1[[System.String, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
M00_L08
 
mov       rcx,[rdi+8]
mov       r11,7FF9F5C90FC0
call      qword ptr [r11]
test      eax,eax
je        near ptr M00_L36
mov       rcx,[rdi+8]
mov       r11,7FF9F5C90FC8
call      qword ptr [r11]
mov       rsi,rax
M00_L09
 
mov       [rbp-60],rsi
test      rsi,rsi
je        near ptr M00_L18
mov       r14,[rsi]
mov       r15,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       r14,r15
jne       near ptr M00_L18
jmp       short M00_L12
M00_L10
 
mov       r10,rsi
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       near ptr M00_L21
mov       r13,[r10+10]
cmp       r9d,[r13+8]
jae       short M00_L13
mov       ecx,r9d
mov       r12,[r13+rcx*8+10]
M00_L11
 
mov       [rbp-48],r12
mov       r12,[rbx+18]
mov       rdx,[rbp-48]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
M00_L12
 
cmp       r14,r15
jne       short M00_L15
mov       rax,rsi
mov       r8d,[rax+8]
inc       r8d
mov       edi,[rax+0C]
cmp       r8d,edi
jae       short M00_L14
mov       [rax+8],r8d
jmp       short M00_L10
M00_L13
 
call      CORINFO_HELP_RNGCHKFAIL
M00_L14
 
mov       [rax+8],edi
jmp       near ptr M00_L24
M00_L15
 
mov       rcx,rsi
mov       r11,7FF9F5C90FA8
call      qword ptr [r11]
test      eax,eax
jne       near ptr M00_L22
jmp       near ptr M00_L24
M00_L16
 
mov       r10,rsi
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       short M00_L21
mov       r13,[r10+10]
cmp       r9d,[r13+8]
jae       short M00_L13
mov       ecx,r9d
mov       r12,[r13+rcx*8+10]
M00_L17
 
mov       [rbp-48],r12
mov       r12,[rbx+18]
mov       rdx,[rbp-48]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
M00_L18
 
mov       r14,[rsi]
mov       r15,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       r14,r15
jne       short M00_L19
mov       rax,rsi
mov       r8d,[rax+8]
inc       r8d
mov       edi,[rax+0C]
cmp       r8d,edi
jae       short M00_L20
mov       [rax+8],r8d
jmp       short M00_L16
M00_L19
 
mov       rcx,rsi
mov       r11,7FF9F5C90FA8
call      qword ptr [r11]
test      eax,eax
jne       short M00_L23
jmp       short M00_L24
M00_L20
 
mov       [rax+8],edi
jmp       short M00_L24
M00_L21
 
mov       ecx,[r10+8]
call      qword ptr [7FF9F603EFD0]
int       3
M00_L22
 
mov       rcx,rsi
mov       r11,7FF9F5C90FB0
call      qword ptr [r11]
mov       r12,rax
jmp       near ptr M00_L11
M00_L23
 
mov       rcx,rsi
mov       r11,7FF9F5C90FB0
call      qword ptr [r11]
mov       r12,rax
jmp       near ptr M00_L17
M00_L24
 
cmp       r14,r15
jne       near ptr M00_L37
M00_L25
 
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M00_L26
 
call      qword ptr [7FF9F6355368]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L27
call      qword ptr [7FF9F63550B0]
mov       rbx,rax
M00_L27
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,275160A8468
mov       r8,rbx
call      qword ptr [7FF9F6066670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L28
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DD73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L05
M00_L29
 
call      qword ptr [7FF9F6355170]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L30
call      qword ptr [7FF9F63550C8]
mov       rbx,rax
M00_L30
 
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,275160A9EE0
mov       r8,rbx
call      qword ptr [7FF9F5E8D470]
mov       rcx,r14
call      CORINFO_HELP_THROW
M00_L31
 
movzx     ecx,byte ptr [rbp-40]
test      cl,cl
je        near ptr M00_L06
lea       rcx,[rbp-40]
call      qword ptr [7FF9F5E847B0]
mov       edi,eax
jmp       near ptr M00_L07
M00_L32
 
call      qword ptr [7FF9F63552A8]
mov       r15,rax
test      r15,r15
jne       short M00_L33
call      qword ptr [7FF9F63550C8]
mov       r15,rax
M00_L33
 
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,275160A4368
mov       r8,r15
call      qword ptr [7FF9F5E8D470]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M00_L34
 
mov       ecx,2
call      qword ptr [7FF9F603ED00]
int       3
M00_L35
 
mov       rcx,7FF9F5D15120
mov       edx,2D
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,2348C002000
mov       rdi,[rcx]
jmp       near ptr M00_L08
M00_L36
 
mov       rcx,7FF9F5D15120
mov       edx,20
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,2348C002008
mov       rsi,[rcx]
jmp       near ptr M00_L09
M00_L37
 
mov       rcx,rsi
mov       r11,7FF9F5C90FB8
call      qword ptr [r11]
jmp       near ptr M00_L25
M00_L38
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+90]
cmp       qword ptr [rbp-60],0
je        short M00_L39
mov       rsi,[rbp-60]
mov       r14,[rsi]
mov       r15,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       r14,r15
je        short M00_L39
mov       rcx,rsi
mov       r11,7FF9F5C90FB8
call      qword ptr [r11]
M00_L39
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
sub       rsp,28
movzx     ecx,cx
call      qword ptr [7FFA534A7370]; Precode of System.Globalization.CharUnicodeInfo.GetCategoryCasingTableOffsetNoBoundsChecks(UInt32)
mov       rcx,[7FFA534C0750]
cmp       byte ptr [rcx+rax],0
setl      al
movzx     eax,al
add       rsp,28
ret
 
System.RuntimeType.IsEnumDefined(System.Object)
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,20
vzeroupper
mov       rbx,rcx
mov       rsi,rdx
M02_L00
 
test      rsi,rsi
je        near ptr M02_L30
mov       rcx,[rbx+18]
mov       rax,rcx
test      cl,2
jne       short M02_L01
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M02_L02
M02_L01
 
xor       ecx,ecx
M02_L02
 
movzx     ecx,cl
test      ecx,ecx
je        near ptr M02_L32
mov       rcx,rsi
call      System.Object.GetType()
mov       rdi,rax
mov       rcx,[rdi+18]
mov       rax,rcx
test      cl,2
jne       short M02_L03
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M02_L04
M02_L03
 
xor       ecx,ecx
M02_L04
 
movzx     ecx,cl
test      ecx,ecx
je        short M02_L08
cmp       rbx,rdi
jne       near ptr M02_L31
M02_L05
 
mov       rcx,[rdi+18]
mov       rax,rcx
mov       rdx,rax
test      al,2
jne       short M02_L06
mov       rax,[rdx+10]
mov       rdx,offset MT_System.Enum
cmp       rax,rdx
sete      al
movzx     eax,al
jmp       short M02_L07
M02_L06
 
xor       eax,eax
M02_L07
 
movzx     eax,al
test      eax,eax
je        near ptr M02_L32
mov       rax,2348C0000A0
mov       rbp,[rax]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M02_L58
mov       ecx,eax
mov       rcx,[rbp+rcx*8+10]
mov       rdi,rcx
M02_L08
 
mov       rcx,275160A0020
cmp       rdi,rcx
je        near ptr M02_L33
mov       rcx,rdi
call      qword ptr [7FF9F5D26070]; System.Type.IsIntegerType(System.Type)
test      eax,eax
je        near ptr M02_L35
mov       rcx,2348C0000A0
mov       rbp,[rcx]
mov       rcx,[rbx+18]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M02_L58
mov       ecx,eax
mov       rbp,[rbp+rcx*8+10]
cmp       rbp,rdi
jne       near ptr M02_L36
test      rbp,rbp
je        near ptr M02_L20
mov       rcx,[rbp+10]
test      rcx,rcx
je        near ptr M02_L16
mov       rax,[rcx]
test      rax,rax
je        near ptr M02_L16
M02_L09
 
mov       r14d,[rax+90]
test      r14d,r14d
je        near ptr M02_L37
M02_L10
 
add       r14d,0FFFFFFFC
cmp       r14d,5
jne       near ptr M02_L57
mov       rdx,offset MT_System.Int32
cmp       [rsi],rdx
je        short M02_L11
mov       rdx,rsi
mov       rcx,offset MT_System.Int32
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
M02_L11
 
mov       r15d,[rsi+8]
mov       rcx,[rbx+10]
test      rcx,rcx
je        short M02_L19
mov       rcx,[rcx]
M02_L12
 
test      rcx,rcx
je        short M02_L15
mov       rax,[rcx+78]
M02_L13
 
test      rax,rax
je        short M02_L14
mov       rcx,offset MT_System.Enum+EnumInfo`1[[System.UInt32, System.Private.CoreLib]]
cmp       [rax],rcx
je        short M02_L17
M02_L14
 
mov       rcx,rbx
xor       edx,edx
call      qword ptr [7FF9F61F7528]; System.Enum.g__InitializeEnumInfo|7_0[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, Boolean)
jmp       short M02_L17
M02_L15
 
xor       eax,eax
jmp       short M02_L13
M02_L16
 
mov       rcx,rbp
call      qword ptr [7FF9F5D26658]; System.RuntimeType.InitializeCache()
jmp       near ptr M02_L09
M02_L17
 
mov       r13,[rax+8]
cmp       byte ptr [rax+19],0
je        near ptr M02_L21
mov       eax,r15d
mov       ecx,[r13+8]
cmp       rcx,rax
seta      al
movzx     eax,al
M02_L18
 
add       rsp,20
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
ret
M02_L19
 
xor       ecx,ecx
jmp       short M02_L12
M02_L20
 
xor       r14d,r14d
jmp       near ptr M02_L10
mov       rdx,rsi
mov       rcx,offset MT_System.SByte
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A2CD50]
jmp       short M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.Byte
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A2CD50]
jmp       short M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.Int16
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A2CD38]
jmp       short M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.UInt16
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A2CD38]
jmp       near ptr M02_L18
M02_L21
 
test      r13,r13
jne       short M02_L22
xor       ecx,ecx
xor       r8d,r8d
jmp       short M02_L23
M02_L22
 
lea       rcx,[r13+10]
mov       r8d,[r13+8]
M02_L23
 
cmp       dword ptr [r13+8],20
jle       short M02_L24
mov       edx,r8d
mov       r8d,r15d
call      qword ptr [7FF9F6A2EAC0]
jmp       short M02_L25
M02_L24
 
mov       edx,r15d
call      qword ptr [7FF9F6A2EF88]; System.SpanHelpers.NonPackedIndexOfValueType[[System.Int32, System.Private.CoreLib],[System.SpanHelpers+DontNegate`1[[System.Int32, System.Private.CoreLib]], System.Private.CoreLib]](Int32 ByRef, Int32, Int32)
M02_L25
 
not       eax
shr       eax,1F
jmp       near ptr M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.UInt32
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       edx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F689D9B0]; System.Enum.IsDefinedPrimitive[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, UInt32)
jmp       near ptr M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.Int64
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A2C630]
jmp       near ptr M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.UInt64
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A2C630]
jmp       near ptr M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.Single
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovss    xmm1,dword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A27DE0]
jmp       near ptr M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.Double
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovsd    xmm1,qword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A27DC8]
jmp       near ptr M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.Char
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A2CD68]
jmp       near ptr M02_L18
M02_L26
 
mov       rcx,275160A4010
cmp       rbp,rcx
je        short M02_L28
mov       rcx,275160A6560
cmp       rbp,rcx
je        short M02_L27
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63B5170]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F6066718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L27
 
mov       rdx,rsi
mov       rcx,offset MT_System.UIntPtr
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A276C0]
jmp       short M02_L29
M02_L28
 
mov       rdx,rsi
mov       rcx,offset MT_System.IntPtr
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A276C0]
M02_L29
 
movzx     eax,al
jmp       near ptr M02_L18
M02_L30
 
mov       ecx,2E5
mov       rdx,7FF9F5C84000
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FF9F60666E8]
int       3
M02_L31
 
mov       rcx,rdi
mov       rdx,rbx
call      System.RuntimeTypeHandle.IsEquivalentTo(System.RuntimeType, System.RuntimeType)
test      eax,eax
jne       near ptr M02_L05
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F638CD98]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbx
call      qword ptr [7FF9F638C768]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F5DDF708]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L32
 
call      qword ptr [7FF9F5D27138]
int       3
M02_L33
 
mov       rcx,rbx
call      qword ptr [7FF9F5D24918]; System.Enum.GetNamesNoCopy(System.RuntimeType)
mov       r8,rsi
mov       rcx,offset MT_System.String
cmp       [r8],rcx
je        short M02_L34
mov       rdx,rsi
call      qword ptr [7FF9F5DD43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M02_L34
 
mov       rdx,rax
mov       rcx,offset MD_System.Array.IndexOf[[System.String, System.Private.CoreLib]](System.String[], System.String)
call      qword ptr [7FF9F689D980]
not       eax
shr       eax,1F
add       rsp,20
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
ret
M02_L35
 
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63B5170]
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F6066718]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M02_L36
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
call      qword ptr [7FF9F638CDF8]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbp
call      qword ptr [7FF9F638C768]
mov       rdx,rax
mov       rcx,r14
call      qword ptr [7FF9F5DDF708]
mov       rcx,r14
call      CORINFO_HELP_THROW
M02_L37
 
mov       r13,rbp
mov       rcx,r13
call      qword ptr [7FF9F5D26AA8]; System.RuntimeType.get_IsActualEnum()
test      eax,eax
je        short M02_L38
mov       rcx,rbp
call      qword ptr [7FF9F5D1A728]; System.RuntimeType.GetEnumUnderlyingType()
mov       r13,rax
test      r13,r13
je        short M02_L38
mov       rcx,offset MT_System.RuntimeType
cmp       [r13],rcx
je        short M02_L38
mov       rdx,rax
call      qword ptr [7FF9F5DD43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M02_L38
 
mov       rcx,275160A6498
cmp       r13,rcx
jne       short M02_L39
mov       r14d,5
jmp       near ptr M02_L54
M02_L39
 
mov       rcx,275160A4198
cmp       r13,rcx
jne       short M02_L40
mov       r14d,6
jmp       near ptr M02_L54
M02_L40
 
mov       rcx,275160A64C0
cmp       r13,rcx
jne       short M02_L41
mov       r14d,7
jmp       near ptr M02_L54
M02_L41
 
mov       rcx,275160A4038
cmp       r13,rcx
jne       short M02_L42
mov       r14d,8
jmp       near ptr M02_L54
M02_L42
 
mov       rcx,275160A4248
cmp       r13,rcx
jne       short M02_L43
mov       r14d,9
jmp       near ptr M02_L54
M02_L43
 
mov       rcx,275160A3F48
cmp       r13,rcx
jne       short M02_L44
mov       r14d,0A
jmp       near ptr M02_L54
M02_L44
 
mov       rcx,275160A64E8
cmp       r13,rcx
jne       short M02_L45
mov       r14d,0B
jmp       near ptr M02_L54
M02_L45
 
mov       rcx,275160A3D90
cmp       r13,rcx
jne       short M02_L46
mov       r14d,0C
jmp       near ptr M02_L54
M02_L46
 
mov       rcx,275160A6448
cmp       r13,rcx
jne       short M02_L47
mov       r14d,3
jmp       near ptr M02_L54
M02_L47
 
mov       rcx,275160A6470
cmp       r13,rcx
jne       short M02_L48
mov       r14d,4
jmp       near ptr M02_L54
M02_L48
 
mov       rcx,275160A6510
cmp       r13,rcx
jne       short M02_L49
mov       r14d,0D
jmp       short M02_L54
M02_L49
 
mov       rcx,275160A6538
cmp       r13,rcx
jne       short M02_L50
mov       r14d,0E
jmp       short M02_L54
M02_L50
 
mov       rcx,275160A71E0
cmp       r13,rcx
jne       short M02_L51
mov       r14d,0F
jmp       short M02_L54
M02_L51
 
mov       rcx,275160A3C08
cmp       r13,rcx
jne       short M02_L52
mov       r14d,10
jmp       short M02_L54
M02_L52
 
mov       rcx,275160A0020
cmp       r13,rcx
jne       short M02_L53
mov       r14d,12
jmp       short M02_L54
M02_L53
 
mov       rcx,275160B53E0
mov       r14d,1
mov       eax,2
cmp       r13,rcx
cmove     r14d,eax
M02_L54
 
cmp       qword ptr [rbp+10],0
je        short M02_L55
mov       rcx,[rbp+10]
mov       rax,[rcx]
test      rax,rax
je        short M02_L55
jmp       short M02_L56
M02_L55
 
mov       rcx,rbp
call      qword ptr [7FF9F5D26658]; System.RuntimeType.InitializeCache()
M02_L56
 
mov       [rax+90],r14d
jmp       near ptr M02_L10
M02_L57
 
cmp       r14d,0A
ja        near ptr M02_L26
mov       edx,r14d
lea       rcx,[7FF9F694C1E0]
mov       ecx,[rcx+rdx*4]
lea       rax,[M02_L00]
add       rcx,rax
jmp       rcx
M02_L58
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,98
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
vmovdqa   xmmword ptr [rbp+20],xmm4
vmovdqa   xmmword ptr [rbp+30],xmm4
vmovdqa   xmmword ptr [rbp+40],xmm4
vmovdqa   xmmword ptr [rbp+50],xmm4
mov       [rbp+60],rax
mov       rax,0F47C5577F303
mov       [rbp],rax
mov       rsi,rcx
mov       rbx,rdx
mov       edi,r8d
mov       r14d,r9d
test      edi,edi
jl        near ptr M03_L05
test      r14d,0FFFFFFFC
jne       near ptr M03_L06
M03_L00
 
cmp       edi,1
jle       near ptr M03_L07
mov       r15d,[rsi+8]
test      r15d,r15d
je        near ptr M03_L07
cmp       dword ptr [rbx+8],0
je        near ptr M03_L09
M03_L01
 
test      [rsp],esp
sub       rsp,200
lea       rcx,[rsp+30]
mov       [rbp+58],rcx
mov       dword ptr [rbp+60],80
xor       ecx,ecx
mov       [rbp+48],rcx
mov       [rbp+50],ecx
lea       rcx,[rsi+0C]
mov       [rbp+38],rcx
mov       [rbp+40],r15d
vmovdqu   xmm0,xmmword ptr [rbx]
vmovdqu   xmmword ptr [rbp+28],xmm0
lea       rcx,[rbp+38]
lea       rdx,[rbp+28]
lea       r8,[rbp+48]
call      qword ptr [7FF9F5DD71B0]; System.String.MakeSeparatorListAny(System.ReadOnlySpan`1, System.ReadOnlySpan`1, System.Collections.Generic.ValueListBuilder`1 ByRef)
mov       eax,[rbp+50]
cmp       eax,[rbp+60]
ja        near ptr M03_L10
mov       r10,[rbp+58]
test      eax,eax
je        near ptr M03_L11
test      r14d,r14d
je        near ptr M03_L12
xor       r15d,r15d
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],r15
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       [rsp+28],r14d
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DD7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       rdi,rax
M03_L02
 
mov       rdx,[rbp+48]
test      rdx,rdx
je        short M03_L03
xor       ecx,ecx
mov       [rbp+48],rcx
mov       rcx,2348C001F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65D5240]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M03_L03
 
mov       rax,rdi
mov       rcx,0F47C5577F303
cmp       [rbp],rcx
je        short M03_L04
call      CORINFO_HELP_FAIL_FAST
M03_L04
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L05
 
mov       ecx,1C7
mov       rdx,7FF9F5C84000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,edi
call      qword ptr [7FF9F68C47E0]
int       3
M03_L06
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F603ECB8]
int       3
M03_L07
 
mov       rcx,rsi
mov       edx,r14d
mov       r8d,edi
call      qword ptr [7FF9F5DD7150]; System.String.CreateSplitArrayOfThisAsSoleValue(System.StringSplitOptions, Int32)
mov       rcx,0F47C5577F303
cmp       [rbp],rcx
je        short M03_L08
call      CORINFO_HELP_FAIL_FAST
M03_L08
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L09
 
cmp       r15d,edi
jge       near ptr M03_L01
and       r14d,0FFFFFFFD
jmp       near ptr M03_L01
M03_L10
 
call      qword ptr [7FF9F603E9D0]
int       3
M03_L11
 
mov       edi,1
jmp       near ptr M03_L00
M03_L12
 
xor       r15d,r15d
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],r15
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DD7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       rdi,rax
jmp       near ptr M03_L02
 
System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,edx
mov       edi,[rbx+8]
lea       ebp,[rdi-1]
mov       r14d,ebp
xor       r15d,r15d
test      sil,1
je        short M04_L03
xor       r15d,r15d
test      edi,edi
jle       short M04_L03
M04_L00
 
mov       ecx,r15d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L01
mov       rax,[7FFA534C0728]
test      byte ptr [rax+rcx],80
je        short M04_L03
jmp       short M04_L02
M04_L01
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L03
M04_L02
 
inc       r15d
cmp       edi,r15d
jg        short M04_L00
M04_L03
 
test      sil,2
je        near ptr M04_L10
mov       r14d,ebp
cmp       r14d,r15d
jl        short M04_L10
mov       ecx,r14d
or        ecx,r15d
jl        short M04_L07
cmp       edi,r14d
jle       short M04_L07
M04_L04
 
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L05
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L06
M04_L05
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L06
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L04
jmp       short M04_L10
M04_L07
 
cmp       r14d,edi
jae       short M04_L14
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L08
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L09
M04_L08
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L09
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L07
M04_L10
 
mov       r8d,r14d
sub       r8d,r15d
inc       r8d
cmp       edi,r8d
jne       short M04_L12
mov       rax,rbx
M04_L11
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L12
 
test      r8d,r8d
je        short M04_L13
mov       rcx,rbx
mov       edx,r15d
call      qword ptr [7FFA534A34A0]; Precode of System.String.InternalSubString(Int32, Int32)
jmp       short M04_L11
M04_L13
 
mov       rax,[7FFA534C08A0]
mov       rax,[rax]
jmp       short M04_L11
M04_L14
 
call      qword ptr [7FFA53493D20]; CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.SplitWithTrimEntriesCount()
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,58
lea       rbp,[rsp+90]
xor       eax,eax
mov       [rbp-58],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
mov       [rbp-40],rax
mov       [rbp-70],rsp
mov       rbx,rcx
mov       rsi,[rbx+298]
test      rsi,rsi
je        short M00_L00
xor       ecx,ecx
cmp       dword ptr [rsi+8],0
sete      cl
test      ecx,ecx
sete      cl
movzx     ecx,cl
cmp       dword ptr [rsi+8],0
jne       short M00_L01
jmp       short M00_L01
M00_L00
 
xor       ecx,ecx
M00_L01
 
test      ecx,ecx
je        near ptr M00_L26
cmp       dword ptr [rsi+8],0
je        short M00_L05
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       short M00_L02
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L28
jmp       short M00_L03
M00_L02
 
call      qword ptr [7FF9F672E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L28
M00_L03
 
mov       ecx,[rsi+8]
dec       ecx
cmp       ecx,[rsi+8]
jae       near ptr M00_L38
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L04
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L28
jmp       short M00_L05
M00_L04
 
call      qword ptr [7FF9F672E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L28
M00_L05
 
mov       rcx,offset MT_System.StringSplitOptions
call      CORINFO_HELP_NEWSFAST
mov       dword ptr [rax+8],2
mov       rdx,rax
mov       rcx,2339B3477F8
cmp       [rcx],ecx
call      qword ptr [7FF9F5D1A770]; System.RuntimeType.IsEnumDefined(System.Object)
test      eax,eax
je        near ptr M00_L29
xor       ecx,ecx
mov       [rbp-40],rcx
mov       edi,0A
mov       ecx,1
mov       eax,ecx
test      ecx,ecx
je        near ptr M00_L31
M00_L06
 
test      eax,eax
je        near ptr M00_L32
M00_L07
 
mov       rcx,offset MT_System.Char[]
mov       edx,1
call      CORINFO_HELP_NEWARR_1_VC
mov       word ptr [rax+10],2E
cmp       [rsi],sil
add       rax,10
mov       rcx,rsi
mov       [rbp-58],rax
mov       dword ptr [rbp-50],1
lea       rdx,[rbp-58]
mov       r8d,edi
mov       r9d,2
call      qword ptr [7FF9F5DD70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
mov       rsi,rax
test      rsi,rsi
je        near ptr M00_L34
cmp       dword ptr [rsi+8],0
je        near ptr M00_L35
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyCollection`1[[System.String, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
M00_L08
 
mov       rcx,[rdi+8]
mov       r11,7FF9F5C90FC0
call      qword ptr [r11]
test      eax,eax
je        near ptr M00_L36
mov       rcx,[rdi+8]
mov       r11,7FF9F5C90FC8
call      qword ptr [r11]
mov       rsi,rax
M00_L09
 
mov       [rbp-60],rsi
test      rsi,rsi
je        near ptr M00_L18
mov       r14,[rsi]
mov       r15,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       r14,r15
jne       near ptr M00_L18
jmp       short M00_L12
M00_L10
 
mov       r10,rsi
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       near ptr M00_L21
mov       r13,[r10+10]
cmp       r9d,[r13+8]
jae       short M00_L13
mov       ecx,r9d
mov       r12,[r13+rcx*8+10]
M00_L11
 
mov       [rbp-48],r12
mov       r12,[rbx+18]
mov       rdx,[rbp-48]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
M00_L12
 
cmp       r14,r15
jne       short M00_L15
mov       rax,rsi
mov       r8d,[rax+8]
inc       r8d
mov       edi,[rax+0C]
cmp       r8d,edi
jae       short M00_L14
mov       [rax+8],r8d
jmp       short M00_L10
M00_L13
 
call      CORINFO_HELP_RNGCHKFAIL
M00_L14
 
mov       [rax+8],edi
jmp       near ptr M00_L24
M00_L15
 
mov       rcx,rsi
mov       r11,7FF9F5C90FA8
call      qword ptr [r11]
test      eax,eax
jne       near ptr M00_L22
jmp       near ptr M00_L24
M00_L16
 
mov       r10,rsi
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       short M00_L21
mov       r13,[r10+10]
cmp       r9d,[r13+8]
jae       short M00_L13
mov       ecx,r9d
mov       r12,[r13+rcx*8+10]
M00_L17
 
mov       [rbp-48],r12
mov       r12,[rbx+18]
mov       rdx,[rbp-48]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
M00_L18
 
mov       r14,[rsi]
mov       r15,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       r14,r15
jne       short M00_L19
mov       rax,rsi
mov       r8d,[rax+8]
inc       r8d
mov       edi,[rax+0C]
cmp       r8d,edi
jae       short M00_L20
mov       [rax+8],r8d
jmp       short M00_L16
M00_L19
 
mov       rcx,rsi
mov       r11,7FF9F5C90FA8
call      qword ptr [r11]
test      eax,eax
jne       short M00_L23
jmp       short M00_L24
M00_L20
 
mov       [rax+8],edi
jmp       short M00_L24
M00_L21
 
mov       ecx,[r10+8]
call      qword ptr [7FF9F603EFD0]
int       3
M00_L22
 
mov       rcx,rsi
mov       r11,7FF9F5C90FB0
call      qword ptr [r11]
mov       r12,rax
jmp       near ptr M00_L11
M00_L23
 
mov       rcx,rsi
mov       r11,7FF9F5C90FB0
call      qword ptr [r11]
mov       r12,rax
jmp       near ptr M00_L17
M00_L24
 
cmp       r14,r15
jne       near ptr M00_L37
M00_L25
 
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M00_L26
 
call      qword ptr [7FF9F6355368]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L27
call      qword ptr [7FF9F63550B0]
mov       rbx,rax
M00_L27
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,2339B338468
mov       r8,rbx
call      qword ptr [7FF9F6066670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L28
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DD73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L05
M00_L29
 
call      qword ptr [7FF9F6355170]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L30
call      qword ptr [7FF9F63550C8]
mov       rbx,rax
M00_L30
 
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,2339B339EE0
mov       r8,rbx
call      qword ptr [7FF9F5E8D470]
mov       rcx,r14
call      CORINFO_HELP_THROW
M00_L31
 
movzx     ecx,byte ptr [rbp-40]
test      cl,cl
je        near ptr M00_L06
lea       rcx,[rbp-40]
call      qword ptr [7FF9F5E847B0]
mov       edi,eax
jmp       near ptr M00_L07
M00_L32
 
call      qword ptr [7FF9F63552A8]
mov       r15,rax
test      r15,r15
jne       short M00_L33
call      qword ptr [7FF9F63550C8]
mov       r15,rax
M00_L33
 
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,2339B334368
mov       r8,r15
call      qword ptr [7FF9F5E8D470]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M00_L34
 
mov       ecx,2
call      qword ptr [7FF9F603ED00]
int       3
M00_L35
 
mov       rcx,7FF9F5D15120
mov       edx,2D
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,1F309402000
mov       rdi,[rcx]
jmp       near ptr M00_L08
M00_L36
 
mov       rcx,7FF9F5D15120
mov       edx,20
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,1F309402008
mov       rsi,[rcx]
jmp       near ptr M00_L09
M00_L37
 
mov       rcx,rsi
mov       r11,7FF9F5C90FB8
call      qword ptr [r11]
jmp       near ptr M00_L25
M00_L38
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+90]
cmp       qword ptr [rbp-60],0
je        short M00_L39
mov       rsi,[rbp-60]
mov       r14,[rsi]
mov       r15,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       r14,r15
je        short M00_L39
mov       rcx,rsi
mov       r11,7FF9F5C90FB8
call      qword ptr [r11]
M00_L39
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
sub       rsp,28
movzx     ecx,cx
call      qword ptr [7FFA534A7370]; Precode of System.Globalization.CharUnicodeInfo.GetCategoryCasingTableOffsetNoBoundsChecks(UInt32)
mov       rcx,[7FFA534C0750]
cmp       byte ptr [rcx+rax],0
setl      al
movzx     eax,al
add       rsp,28
ret
 
System.RuntimeType.IsEnumDefined(System.Object)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
vzeroupper
mov       rbx,rcx
mov       rsi,rdx
M02_L00
 
test      rsi,rsi
je        near ptr M02_L47
mov       rcx,[rbx+18]
mov       rax,rcx
test      cl,2
jne       short M02_L01
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M02_L02
M02_L01
 
xor       ecx,ecx
M02_L02
 
movzx     ecx,cl
test      ecx,ecx
je        near ptr M02_L49
mov       rcx,rsi
call      System.Object.GetType()
mov       rdi,rax
mov       rcx,[rdi+18]
mov       rax,rcx
test      cl,2
jne       short M02_L03
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M02_L04
M02_L03
 
xor       ecx,ecx
M02_L04
 
movzx     ecx,cl
test      ecx,ecx
je        short M02_L08
cmp       rbx,rdi
jne       near ptr M02_L48
M02_L05
 
mov       rcx,[rdi+18]
mov       rax,rcx
mov       rdx,rax
test      al,2
jne       short M02_L06
mov       rax,[rdx+10]
mov       rdx,offset MT_System.Enum
cmp       rax,rdx
sete      al
movzx     eax,al
jmp       short M02_L07
M02_L06
 
xor       eax,eax
M02_L07
 
movzx     eax,al
test      eax,eax
je        near ptr M02_L49
mov       rax,1F3094000A0
mov       rbp,[rax]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M02_L64
mov       ecx,eax
mov       rcx,[rbp+rcx*8+10]
mov       rdi,rcx
M02_L08
 
mov       rcx,2339B330020
cmp       rdi,rcx
je        near ptr M02_L50
mov       rcx,rdi
call      qword ptr [7FF9F5D26070]; System.Type.IsIntegerType(System.Type)
test      eax,eax
je        near ptr M02_L52
mov       rcx,1F3094000A0
mov       rbp,[rcx]
mov       rcx,[rbx+18]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M02_L64
mov       ecx,eax
mov       rbp,[rbp+rcx*8+10]
cmp       rbp,rdi
jne       near ptr M02_L53
test      rbp,rbp
je        near ptr M02_L27
mov       rcx,[rbp+10]
test      rcx,rcx
je        near ptr M02_L19
mov       rax,[rcx]
test      rax,rax
je        near ptr M02_L19
M02_L09
 
mov       edi,[rax+90]
test      edi,edi
je        near ptr M02_L23
M02_L10
 
add       edi,0FFFFFFFC
cmp       edi,5
jne       near ptr M02_L22
mov       rdx,offset MT_System.Int32
cmp       [rsi],rdx
je        short M02_L11
mov       rdx,rsi
mov       rcx,offset MT_System.Int32
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
M02_L11
 
mov       r14d,[rsi+8]
mov       rcx,[rbx+10]
test      rcx,rcx
je        short M02_L20
mov       rcx,[rcx]
M02_L12
 
test      rcx,rcx
je        short M02_L15
mov       rax,[rcx+78]
M02_L13
 
test      rax,rax
je        short M02_L14
mov       rcx,offset MT_System.Enum+EnumInfo`1[[System.UInt32, System.Private.CoreLib]]
cmp       [rax],rcx
je        short M02_L17
M02_L14
 
mov       rcx,rbx
xor       edx,edx
call      qword ptr [7FF9F61F7528]; System.Enum.g__InitializeEnumInfo|7_0[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, Boolean)
jmp       short M02_L17
M02_L15
 
xor       eax,eax
jmp       short M02_L13
M02_L16
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L17
 
mov       r15,[rax+8]
cmp       byte ptr [rax+19],0
je        near ptr M02_L54
mov       eax,r14d
mov       edx,[r15+8]
cmp       rdx,rax
seta      al
movzx     eax,al
M02_L18
 
jmp       short M02_L16
M02_L19
 
mov       rcx,rbp
call      qword ptr [7FF9F5D26658]; System.RuntimeType.InitializeCache()
jmp       near ptr M02_L09
M02_L20
 
xor       ecx,ecx
jmp       short M02_L12
mov       rcx,offset MT_System.Char
cmp       [rsi],rcx
je        short M02_L21
mov       rdx,rsi
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
M02_L21
 
movzx     edx,word ptr [rsi+8]
mov       rcx,rbx
call      qword ptr [7FF9F6A2CD80]
jmp       short M02_L16
M02_L22
 
cmp       edi,0A
ja        near ptr M02_L59
mov       edx,edi
lea       rcx,[7FF9F694E768]
mov       ecx,[rcx+rdx*4]
lea       rax,[M02_L00]
add       rcx,rax
jmp       rcx
M02_L23
 
mov       rdi,rbp
mov       rcx,rdi
call      qword ptr [7FF9F5D26AA8]; System.RuntimeType.get_IsActualEnum()
test      eax,eax
jne       near ptr M02_L28
M02_L24
 
mov       rcx,2339B336498
cmp       rdi,rcx
je        near ptr M02_L43
mov       rcx,2339B334198
cmp       rdi,rcx
je        near ptr M02_L31
mov       rcx,2339B3364C0
cmp       rdi,rcx
je        near ptr M02_L42
mov       rcx,2339B334038
cmp       rdi,rcx
je        near ptr M02_L39
mov       rcx,2339B334248
cmp       rdi,rcx
je        near ptr M02_L30
mov       rcx,2339B333F48
cmp       rdi,rcx
je        near ptr M02_L32
mov       rcx,2339B3364E8
cmp       rdi,rcx
je        near ptr M02_L38
mov       rcx,2339B333D90
cmp       rdi,rcx
je        near ptr M02_L37
mov       rcx,2339B336448
cmp       rdi,rcx
je        near ptr M02_L36
mov       rcx,2339B336470
cmp       rdi,rcx
je        near ptr M02_L46
mov       rcx,2339B336510
cmp       rdi,rcx
je        near ptr M02_L41
mov       rcx,2339B336538
cmp       rdi,rcx
je        near ptr M02_L35
mov       rcx,2339B3371E0
cmp       rdi,rcx
je        near ptr M02_L45
mov       rcx,2339B333C08
cmp       rdi,rcx
je        near ptr M02_L44
mov       rcx,2339B330020
cmp       rdi,rcx
je        near ptr M02_L34
mov       rcx,2339B3453E0
mov       r14d,1
mov       eax,2
cmp       rdi,rcx
cmove     r14d,eax
M02_L25
 
mov       edi,r14d
mov       rcx,[rbp+10]
test      rcx,rcx
je        near ptr M02_L40
mov       rax,[rcx]
test      rax,rax
je        near ptr M02_L40
M02_L26
 
mov       [rax+90],edi
jmp       near ptr M02_L10
M02_L27
 
xor       edi,edi
jmp       near ptr M02_L10
M02_L28
 
mov       rcx,rbp
call      qword ptr [7FF9F5D1A728]; System.RuntimeType.GetEnumUnderlyingType()
mov       rdi,rax
test      rdi,rdi
jne       short M02_L33
M02_L29
 
jmp       near ptr M02_L24
M02_L30
 
mov       r14d,9
jmp       short M02_L25
M02_L31
 
mov       r14d,6
jmp       short M02_L25
M02_L32
 
mov       r14d,0A
jmp       short M02_L25
M02_L33
 
mov       rcx,offset MT_System.RuntimeType
cmp       [rdi],rcx
jne       near ptr M02_L63
jmp       short M02_L29
M02_L34
 
mov       r14d,12
jmp       short M02_L25
M02_L35
 
mov       r14d,0E
jmp       near ptr M02_L25
M02_L36
 
mov       r14d,3
jmp       near ptr M02_L25
M02_L37
 
mov       r14d,0C
jmp       near ptr M02_L25
M02_L38
 
mov       r14d,0B
jmp       near ptr M02_L25
M02_L39
 
mov       r14d,8
jmp       near ptr M02_L25
M02_L40
 
mov       rcx,rbp
call      qword ptr [7FF9F5D26658]; System.RuntimeType.InitializeCache()
jmp       near ptr M02_L26
M02_L41
 
mov       r14d,0D
jmp       near ptr M02_L25
M02_L42
 
mov       r14d,7
jmp       near ptr M02_L25
M02_L43
 
mov       r14d,5
jmp       near ptr M02_L25
M02_L44
 
mov       r14d,10
jmp       near ptr M02_L25
M02_L45
 
mov       r14d,0F
jmp       near ptr M02_L25
M02_L46
 
mov       r14d,4
jmp       near ptr M02_L25
mov       rdx,rsi
mov       rcx,offset MT_System.SByte
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A2CD68]
jmp       near ptr M02_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Byte
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A2CD68]
jmp       near ptr M02_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Int16
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A2CD50]
jmp       near ptr M02_L16
mov       rdx,rsi
mov       rcx,offset MT_System.UInt16
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A2CD50]
jmp       near ptr M02_L16
M02_L47
 
mov       ecx,2E5
mov       rdx,7FF9F5C84000
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FF9F60666E8]
int       3
M02_L48
 
mov       rcx,rdi
mov       rdx,rbx
call      System.RuntimeTypeHandle.IsEquivalentTo(System.RuntimeType, System.RuntimeType)
test      eax,eax
jne       near ptr M02_L05
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F638CD98]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbx
call      qword ptr [7FF9F638C768]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F5DDF708]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L49
 
call      qword ptr [7FF9F5D27138]
int       3
M02_L50
 
mov       rcx,rbx
call      qword ptr [7FF9F5D24918]; System.Enum.GetNamesNoCopy(System.RuntimeType)
mov       r8,rsi
mov       rcx,offset MT_System.String
cmp       [r8],rcx
je        short M02_L51
mov       rdx,rsi
call      qword ptr [7FF9F5DD43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M02_L51
 
mov       rdx,rax
mov       rcx,offset MD_System.Array.IndexOf[[System.String, System.Private.CoreLib]](System.String[], System.String)
call      qword ptr [7FF9F689D980]
not       eax
shr       eax,1F
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L52
 
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63B5170]
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F6066718]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M02_L53
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F638CDF8]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbp
call      qword ptr [7FF9F638C768]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F5DDF708]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L54
 
test      r15,r15
jne       short M02_L55
xor       ecx,ecx
xor       r8d,r8d
jmp       short M02_L56
M02_L55
 
lea       rcx,[r15+10]
mov       r8d,[r15+8]
M02_L56
 
cmp       dword ptr [r15+8],20
jle       short M02_L57
mov       edx,r8d
mov       r8d,r14d
call      qword ptr [7FF9F6A2EAD8]
jmp       short M02_L58
M02_L57
 
mov       edx,r14d
call      qword ptr [7FF9F6A2EFA0]; System.SpanHelpers.NonPackedIndexOfValueType[[System.Int32, System.Private.CoreLib],[System.SpanHelpers+DontNegate`1[[System.Int32, System.Private.CoreLib]], System.Private.CoreLib]](Int32 ByRef, Int32, Int32)
M02_L58
 
not       eax
shr       eax,1F
jmp       near ptr M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.UInt32
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       edx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F689D9B0]; System.Enum.IsDefinedPrimitive[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, UInt32)
jmp       near ptr M02_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Int64
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A2C648]
jmp       near ptr M02_L16
mov       rdx,rsi
mov       rcx,offset MT_System.UInt64
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A2C648]
jmp       near ptr M02_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Single
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovss    xmm1,dword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A27F30]
jmp       near ptr M02_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Double
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovsd    xmm1,qword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A27F18]
jmp       near ptr M02_L16
M02_L59
 
mov       rcx,2339B334010
cmp       rbp,rcx
je        short M02_L61
mov       rcx,2339B336560
cmp       rbp,rcx
je        short M02_L60
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63B5170]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F6066718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L60
 
mov       rdx,rsi
mov       rcx,offset MT_System.UIntPtr
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A27810]
jmp       short M02_L62
M02_L61
 
mov       rdx,rsi
mov       rcx,offset MT_System.IntPtr
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A27810]
M02_L62
 
movzx     eax,al
jmp       near ptr M02_L16
M02_L63
 
mov       rdx,rax
call      qword ptr [7FF9F5DD43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M02_L64
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,98
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
vmovdqa   xmmword ptr [rbp+20],xmm4
vmovdqa   xmmword ptr [rbp+30],xmm4
vmovdqa   xmmword ptr [rbp+40],xmm4
vmovdqa   xmmword ptr [rbp+50],xmm4
mov       [rbp+60],rax
mov       rax,325B52661390
mov       [rbp],rax
mov       rsi,rcx
mov       rbx,rdx
mov       edi,r8d
mov       r14d,r9d
test      edi,edi
jl        near ptr M03_L06
test      r14d,0FFFFFFFC
jne       near ptr M03_L07
M03_L00
 
cmp       edi,1
jle       near ptr M03_L08
mov       r15d,[rsi+8]
test      r15d,r15d
je        near ptr M03_L08
cmp       dword ptr [rbx+8],0
je        near ptr M03_L10
M03_L01
 
test      [rsp],esp
sub       rsp,200
lea       rcx,[rsp+30]
mov       [rbp+58],rcx
mov       dword ptr [rbp+60],80
xor       ecx,ecx
mov       [rbp+48],rcx
mov       [rbp+50],ecx
lea       rcx,[rsi+0C]
mov       [rbp+38],rcx
mov       [rbp+40],r15d
vmovdqu   xmm0,xmmword ptr [rbx]
vmovdqu   xmmword ptr [rbp+28],xmm0
lea       rcx,[rbp+38]
lea       rdx,[rbp+28]
lea       r8,[rbp+48]
call      qword ptr [7FF9F5DD71B0]; System.String.MakeSeparatorListAny(System.ReadOnlySpan`1, System.ReadOnlySpan`1, System.Collections.Generic.ValueListBuilder`1 ByRef)
mov       eax,[rbp+50]
cmp       eax,[rbp+60]
ja        near ptr M03_L11
mov       r10,[rbp+58]
test      eax,eax
je        near ptr M03_L12
test      r14d,r14d
je        near ptr M03_L05
xor       ecx,ecx
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],rcx
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       [rsp+28],r14d
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DD7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       rbx,rax
M03_L02
 
mov       rdx,[rbp+48]
test      rdx,rdx
je        short M03_L03
xor       ecx,ecx
mov       [rbp+48],rcx
mov       rcx,1F309401F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65D5250]; System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M03_L03
 
mov       rax,rbx
mov       rcx,325B52661390
cmp       [rbp],rcx
je        short M03_L04
call      CORINFO_HELP_FAIL_FAST
M03_L04
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L05
 
xor       r14d,r14d
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],r14
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DD7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       rbx,rax
jmp       short M03_L02
M03_L06
 
mov       ecx,1C7
mov       rdx,7FF9F5C84000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,edi
call      qword ptr [7FF9F68C47E0]
int       3
M03_L07
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F603ECB8]
int       3
M03_L08
 
mov       rcx,rsi
mov       edx,r14d
mov       r8d,edi
call      qword ptr [7FF9F5DD7150]; System.String.CreateSplitArrayOfThisAsSoleValue(System.StringSplitOptions, Int32)
mov       rcx,325B52661390
cmp       [rbp],rcx
je        short M03_L09
call      CORINFO_HELP_FAIL_FAST
M03_L09
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L10
 
cmp       r15d,edi
jge       near ptr M03_L01
and       r14d,0FFFFFFFD
jmp       near ptr M03_L01
M03_L11
 
call      qword ptr [7FF9F603E9D0]
int       3
M03_L12
 
mov       edi,1
jmp       near ptr M03_L00
 
System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,edx
mov       edi,[rbx+8]
lea       ebp,[rdi-1]
mov       r14d,ebp
xor       r15d,r15d
test      sil,1
je        short M04_L03
xor       r15d,r15d
test      edi,edi
jle       short M04_L03
M04_L00
 
mov       ecx,r15d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L01
mov       rax,[7FFA534C0728]
test      byte ptr [rax+rcx],80
je        short M04_L03
jmp       short M04_L02
M04_L01
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L03
M04_L02
 
inc       r15d
cmp       edi,r15d
jg        short M04_L00
M04_L03
 
test      sil,2
je        near ptr M04_L10
mov       r14d,ebp
cmp       r14d,r15d
jl        short M04_L10
mov       ecx,r14d
or        ecx,r15d
jl        short M04_L07
cmp       edi,r14d
jle       short M04_L07
M04_L04
 
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L05
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L06
M04_L05
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L06
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L04
jmp       short M04_L10
M04_L07
 
cmp       r14d,edi
jae       short M04_L14
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L08
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L09
M04_L08
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L09
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L07
M04_L10
 
mov       r8d,r14d
sub       r8d,r15d
inc       r8d
cmp       edi,r8d
jne       short M04_L12
mov       rax,rbx
M04_L11
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L12
 
test      r8d,r8d
je        short M04_L13
mov       rcx,rbx
mov       edx,r15d
call      qword ptr [7FFA534A34A0]; Precode of System.String.InternalSubString(Int32, Int32)
jmp       short M04_L11
M04_L13
 
mov       rax,[7FFA534C08A0]
mov       rax,[rax]
jmp       short M04_L11
M04_L14
 
call      qword ptr [7FFA53493D20]; CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.SplitWithTrimEntries()
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,48
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
xor       eax,eax
mov       [rbp-40],rax
mov       [rbp-60],rsp
mov       rbx,rcx
mov       rsi,[rbx+298]
test      rsi,rsi
je        short M00_L00
xor       ecx,ecx
cmp       dword ptr [rsi+8],0
sete      cl
test      ecx,ecx
sete      cl
movzx     ecx,cl
cmp       dword ptr [rsi+8],0
jne       short M00_L01
jmp       short M00_L01
M00_L00
 
xor       ecx,ecx
M00_L01
 
test      ecx,ecx
je        near ptr M00_L23
cmp       dword ptr [rsi+8],0
je        short M00_L05
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       short M00_L03
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L25
M00_L02
 
mov       ecx,[rsi+8]
dec       ecx
cmp       ecx,[rsi+8]
jae       near ptr M00_L31
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L04
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L25
jmp       short M00_L05
M00_L03
 
call      qword ptr [7FF9F68BF2E8]
test      eax,eax
jne       near ptr M00_L25
jmp       short M00_L02
M00_L04
 
call      qword ptr [7FF9F68BF2E8]
test      eax,eax
jne       near ptr M00_L25
M00_L05
 
mov       rcx,offset MT_System.StringSplitOptions
call      CORINFO_HELP_NEWSFAST
mov       dword ptr [rax+8],2
mov       rdx,rax
mov       rcx,233D9C077D8
cmp       [rcx],ecx
call      qword ptr [7FF9F5D0A770]; System.RuntimeType.IsEnumDefined(System.Object)
test      eax,eax
je        near ptr M00_L26
mov       rcx,offset MT_System.Char[]
mov       edx,1
call      CORINFO_HELP_NEWARR_1_VC
mov       word ptr [rax+10],2E
cmp       [rsi],sil
add       rax,10
mov       rcx,rsi
mov       [rbp-50],rax
mov       dword ptr [rbp-48],1
lea       rdx,[rbp-50]
mov       r9d,2
mov       r8d,7FFFFFFF
call      qword ptr [7FF9F5DC70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
mov       rsi,rax
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyCollection`1[[System.String, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
test      rsi,rsi
je        near ptr M00_L28
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+8]
mov       r11,7FF9F5C810E0
call      qword ptr [r11]
test      eax,eax
je        near ptr M00_L29
mov       rcx,[rdi+8]
mov       r11,7FF9F5C810E8
call      qword ptr [r11]
mov       rsi,rax
M00_L06
 
mov       [rbp-58],rsi
test      rsi,rsi
je        near ptr M00_L15
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
jne       near ptr M00_L15
jmp       short M00_L09
M00_L07
 
mov       r10,rsi
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       near ptr M00_L18
mov       r13,[r10+10]
cmp       r9d,[r13+8]
jae       short M00_L10
mov       ecx,r9d
mov       r12,[r13+rcx*8+10]
M00_L08
 
mov       [rbp-40],r12
mov       r12,[rbx+18]
mov       rdx,[rbp-40]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
M00_L09
 
cmp       rdi,r14
jne       short M00_L12
mov       rax,rsi
mov       r8d,[rax+8]
inc       r8d
mov       r15d,[rax+0C]
cmp       r8d,r15d
jae       short M00_L11
mov       [rax+8],r8d
jmp       short M00_L07
M00_L10
 
call      CORINFO_HELP_RNGCHKFAIL
M00_L11
 
mov       [rax+8],r15d
jmp       near ptr M00_L21
M00_L12
 
mov       rcx,rsi
mov       r11,7FF9F5C810C8
call      qword ptr [r11]
test      eax,eax
jne       near ptr M00_L19
jmp       near ptr M00_L21
M00_L13
 
mov       r10,rsi
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       short M00_L18
mov       r13,[r10+10]
cmp       r9d,[r13+8]
jae       short M00_L10
mov       ecx,r9d
mov       r12,[r13+rcx*8+10]
M00_L14
 
mov       [rbp-40],r12
mov       r12,[rbx+18]
mov       rdx,[rbp-40]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
M00_L15
 
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
jne       short M00_L16
mov       rax,rsi
mov       r8d,[rax+8]
inc       r8d
mov       r15d,[rax+0C]
cmp       r8d,r15d
jae       short M00_L17
mov       [rax+8],r8d
jmp       short M00_L13
M00_L16
 
mov       rcx,rsi
mov       r11,7FF9F5C810C8
call      qword ptr [r11]
test      eax,eax
jne       short M00_L20
jmp       short M00_L21
M00_L17
 
mov       [rax+8],r15d
jmp       short M00_L21
M00_L18
 
mov       ecx,[r10+8]
call      qword ptr [7FF9F602EFD0]
int       3
M00_L19
 
mov       rcx,rsi
mov       r11,7FF9F5C810D0
call      qword ptr [r11]
mov       r12,rax
jmp       near ptr M00_L08
M00_L20
 
mov       rcx,rsi
mov       r11,7FF9F5C810D0
call      qword ptr [r11]
mov       r12,rax
jmp       near ptr M00_L14
M00_L21
 
cmp       rdi,r14
jne       near ptr M00_L30
M00_L22
 
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M00_L23
 
call      qword ptr [7FF9F6345368]
mov       rsi,rax
test      rsi,rsi
jne       short M00_L24
call      qword ptr [7FF9F63450B0]
mov       rsi,rax
M00_L24
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,233D9BF8468
mov       r8,rsi
call      qword ptr [7FF9F6056670]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M00_L25
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DC73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L05
M00_L26
 
call      qword ptr [7FF9F6345170]
mov       rdi,rax
test      rdi,rdi
jne       short M00_L27
call      qword ptr [7FF9F63450C8]
mov       rdi,rax
M00_L27
 
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,233D9BF9EE0
mov       r8,rdi
call      qword ptr [7FF9F5E7D470]
mov       rcx,r14
call      CORINFO_HELP_THROW
M00_L28
 
mov       ecx,14
call      qword ptr [7FF9F602ED00]
int       3
M00_L29
 
mov       rcx,7FF9F5D05120
mov       edx,20
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,1F347C01FF8
mov       rsi,[rcx]
jmp       near ptr M00_L06
M00_L30
 
mov       rcx,rsi
mov       r11,7FF9F5C810D8
call      qword ptr [r11]
jmp       near ptr M00_L22
M00_L31
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M00_L32
mov       rsi,[rbp-58]
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
je        short M00_L32
mov       rcx,rsi
mov       r11,7FF9F5C810D8
call      qword ptr [r11]
M00_L32
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.RuntimeType.IsEnumDefined(System.Object)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
vzeroupper
mov       rbx,rcx
mov       rsi,rdx
M01_L00
 
test      rsi,rsi
je        near ptr M01_L47
mov       rcx,[rbx+18]
mov       rax,rcx
test      cl,2
jne       short M01_L01
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M01_L02
M01_L01
 
xor       ecx,ecx
M01_L02
 
movzx     ecx,cl
test      ecx,ecx
je        near ptr M01_L49
mov       rcx,rsi
call      System.Object.GetType()
mov       rdi,rax
mov       rcx,[rdi+18]
mov       rax,rcx
test      cl,2
jne       short M01_L03
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M01_L04
M01_L03
 
xor       ecx,ecx
M01_L04
 
movzx     ecx,cl
test      ecx,ecx
je        short M01_L08
cmp       rbx,rdi
jne       near ptr M01_L48
M01_L05
 
mov       rcx,[rdi+18]
mov       rax,rcx
mov       rdx,rax
test      al,2
jne       short M01_L06
mov       rax,[rdx+10]
mov       rdx,offset MT_System.Enum
cmp       rax,rdx
sete      al
movzx     eax,al
jmp       short M01_L07
M01_L06
 
xor       eax,eax
M01_L07
 
movzx     eax,al
test      eax,eax
je        near ptr M01_L49
mov       rax,1F347C000A0
mov       rbp,[rax]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M01_L64
mov       ecx,eax
mov       rcx,[rbp+rcx*8+10]
mov       rdi,rcx
M01_L08
 
mov       rcx,233D9BF0020
cmp       rdi,rcx
je        near ptr M01_L50
mov       rcx,rdi
call      qword ptr [7FF9F5D16070]; System.Type.IsIntegerType(System.Type)
test      eax,eax
je        near ptr M01_L52
mov       rcx,1F347C000A0
mov       rbp,[rcx]
mov       rcx,[rbx+18]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M01_L64
mov       ecx,eax
mov       rbp,[rbp+rcx*8+10]
cmp       rbp,rdi
jne       near ptr M01_L53
test      rbp,rbp
je        near ptr M01_L23
mov       rcx,[rbp+10]
test      rcx,rcx
je        near ptr M01_L19
mov       rax,[rcx]
test      rax,rax
je        near ptr M01_L19
M01_L09
 
mov       edi,[rax+90]
test      edi,edi
je        near ptr M01_L24
M01_L10
 
add       edi,0FFFFFFFC
cmp       edi,5
jne       near ptr M01_L22
mov       rdx,offset MT_System.Int32
cmp       [rsi],rdx
je        short M01_L11
mov       rdx,rsi
mov       rcx,offset MT_System.Int32
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
M01_L11
 
mov       r14d,[rsi+8]
mov       rcx,[rbx+10]
test      rcx,rcx
je        short M01_L20
mov       rcx,[rcx]
M01_L12
 
test      rcx,rcx
je        short M01_L15
mov       rax,[rcx+78]
M01_L13
 
test      rax,rax
je        short M01_L14
mov       rcx,offset MT_System.Enum+EnumInfo`1[[System.UInt32, System.Private.CoreLib]]
cmp       [rax],rcx
je        short M01_L17
M01_L14
 
mov       rcx,rbx
xor       edx,edx
call      qword ptr [7FF9F61E7528]; System.Enum.g__InitializeEnumInfo|7_0[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, Boolean)
jmp       short M01_L17
M01_L15
 
xor       eax,eax
jmp       short M01_L13
M01_L16
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L17
 
mov       r15,[rax+8]
cmp       byte ptr [rax+19],0
je        near ptr M01_L54
mov       eax,r14d
mov       edx,[r15+8]
cmp       rdx,rax
seta      al
movzx     eax,al
M01_L18
 
jmp       short M01_L16
M01_L19
 
mov       rcx,rbp
call      qword ptr [7FF9F5D16658]; System.RuntimeType.InitializeCache()
jmp       near ptr M01_L09
M01_L20
 
xor       ecx,ecx
jmp       short M01_L12
mov       rcx,offset MT_System.Char
cmp       [rsi],rcx
je        short M01_L21
mov       rdx,rsi
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
M01_L21
 
movzx     edx,word ptr [rsi+8]
mov       rcx,rbx
call      qword ptr [7FF9F6A259C8]
jmp       short M01_L16
M01_L22
 
cmp       edi,0A
ja        near ptr M01_L59
mov       edx,edi
lea       rcx,[7FF9F691C908]
mov       ecx,[rcx+rdx*4]
lea       rax,[M01_L00]
add       rcx,rax
jmp       rcx
M01_L23
 
xor       edi,edi
jmp       near ptr M01_L10
M01_L24
 
mov       rdi,rbp
mov       rcx,rdi
call      qword ptr [7FF9F5D16AA8]; System.RuntimeType.get_IsActualEnum()
test      eax,eax
jne       near ptr M01_L28
M01_L25
 
mov       rcx,233D9BF6498
cmp       rdi,rcx
je        near ptr M01_L43
mov       rcx,233D9BF4198
cmp       rdi,rcx
je        near ptr M01_L31
mov       rcx,233D9BF64C0
cmp       rdi,rcx
je        near ptr M01_L42
mov       rcx,233D9BF4038
cmp       rdi,rcx
je        near ptr M01_L39
mov       rcx,233D9BF4248
cmp       rdi,rcx
je        near ptr M01_L30
mov       rcx,233D9BF3F48
cmp       rdi,rcx
je        near ptr M01_L32
mov       rcx,233D9BF64E8
cmp       rdi,rcx
je        near ptr M01_L38
mov       rcx,233D9BF3D90
cmp       rdi,rcx
je        near ptr M01_L37
mov       rcx,233D9BF6448
cmp       rdi,rcx
je        near ptr M01_L36
mov       rcx,233D9BF6470
cmp       rdi,rcx
je        near ptr M01_L46
mov       rcx,233D9BF6510
cmp       rdi,rcx
je        near ptr M01_L41
mov       rcx,233D9BF6538
cmp       rdi,rcx
je        near ptr M01_L35
mov       rcx,233D9BF71E0
cmp       rdi,rcx
je        near ptr M01_L45
mov       rcx,233D9BF3C08
cmp       rdi,rcx
je        near ptr M01_L44
mov       rcx,233D9BF0020
cmp       rdi,rcx
je        near ptr M01_L34
mov       rcx,233D9C053E0
mov       r14d,1
mov       eax,2
cmp       rdi,rcx
cmove     r14d,eax
M01_L26
 
mov       edi,r14d
mov       rcx,[rbp+10]
test      rcx,rcx
je        near ptr M01_L40
mov       rax,[rcx]
test      rax,rax
je        near ptr M01_L40
M01_L27
 
mov       [rax+90],edi
jmp       near ptr M01_L10
M01_L28
 
mov       rcx,rbp
call      qword ptr [7FF9F5D0A728]; System.RuntimeType.GetEnumUnderlyingType()
mov       rdi,rax
test      rdi,rdi
jne       short M01_L33
M01_L29
 
jmp       near ptr M01_L25
M01_L30
 
mov       r14d,9
jmp       short M01_L26
M01_L31
 
mov       r14d,6
jmp       short M01_L26
M01_L32
 
mov       r14d,0A
jmp       short M01_L26
M01_L33
 
mov       rcx,offset MT_System.RuntimeType
cmp       [rdi],rcx
jne       near ptr M01_L63
jmp       short M01_L29
M01_L34
 
mov       r14d,12
jmp       short M01_L26
M01_L35
 
mov       r14d,0E
jmp       short M01_L26
M01_L36
 
mov       r14d,3
jmp       near ptr M01_L26
M01_L37
 
mov       r14d,0C
jmp       near ptr M01_L26
M01_L38
 
mov       r14d,0B
jmp       near ptr M01_L26
M01_L39
 
mov       r14d,8
jmp       near ptr M01_L26
M01_L40
 
mov       rcx,rbp
call      qword ptr [7FF9F5D16658]; System.RuntimeType.InitializeCache()
jmp       near ptr M01_L27
M01_L41
 
mov       r14d,0D
jmp       near ptr M01_L26
M01_L42
 
mov       r14d,7
jmp       near ptr M01_L26
M01_L43
 
mov       r14d,5
jmp       near ptr M01_L26
M01_L44
 
mov       r14d,10
jmp       near ptr M01_L26
M01_L45
 
mov       r14d,0F
jmp       near ptr M01_L26
M01_L46
 
mov       r14d,4
jmp       near ptr M01_L26
mov       rdx,rsi
mov       rcx,offset MT_System.SByte
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A259B0]
jmp       near ptr M01_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Byte
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A259B0]
jmp       near ptr M01_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Int16
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A25998]
jmp       near ptr M01_L16
mov       rdx,rsi
mov       rcx,offset MT_System.UInt16
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A25998]
jmp       near ptr M01_L16
M01_L47
 
mov       ecx,2E5
mov       rdx,7FF9F5C74000
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FF9F60566E8]
int       3
M01_L48
 
mov       rcx,rdi
mov       rdx,rbx
call      System.RuntimeTypeHandle.IsEquivalentTo(System.RuntimeType, System.RuntimeType)
test      eax,eax
jne       near ptr M01_L05
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F637CD98]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbx
call      qword ptr [7FF9F637C768]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F5DCF708]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L49
 
call      qword ptr [7FF9F5D17138]
int       3
M01_L50
 
mov       rcx,rbx
call      qword ptr [7FF9F5D14918]; System.Enum.GetNamesNoCopy(System.RuntimeType)
mov       r8,rsi
mov       rcx,offset MT_System.String
cmp       [r8],rcx
je        short M01_L51
mov       rdx,rsi
call      qword ptr [7FF9F5DC43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M01_L51
 
mov       rdx,rax
mov       rcx,offset MD_System.Array.IndexOf[[System.String, System.Private.CoreLib]](System.String[], System.String)
call      qword ptr [7FF9F6887D98]
not       eax
shr       eax,1F
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L52
 
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63A5170]
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F6056718]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L53
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F637CDF8]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbp
call      qword ptr [7FF9F637C768]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F5DCF708]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L54
 
test      r15,r15
jne       short M01_L55
xor       ecx,ecx
xor       r8d,r8d
jmp       short M01_L56
M01_L55
 
lea       rcx,[r15+10]
mov       r8d,[r15+8]
M01_L56
 
cmp       dword ptr [r15+8],20
jle       short M01_L57
mov       edx,r8d
mov       r8d,r14d
call      qword ptr [7FF9F6A27720]
jmp       short M01_L58
M01_L57
 
mov       edx,r14d
call      qword ptr [7FF9F6A27BE8]; System.SpanHelpers.NonPackedIndexOfValueType[[System.Int32, System.Private.CoreLib],[System.SpanHelpers+DontNegate`1[[System.Int32, System.Private.CoreLib]], System.Private.CoreLib]](Int32 ByRef, Int32, Int32)
M01_L58
 
not       eax
shr       eax,1F
jmp       near ptr M01_L18
mov       rdx,rsi
mov       rcx,offset MT_System.UInt32
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       edx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6887DC8]; System.Enum.IsDefinedPrimitive[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, UInt32)
jmp       near ptr M01_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Int64
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A25290]
jmp       near ptr M01_L16
mov       rdx,rsi
mov       rcx,offset MT_System.UInt64
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A25290]
jmp       near ptr M01_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Single
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovss    xmm1,dword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A24B88]
jmp       near ptr M01_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Double
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovsd    xmm1,qword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A24B70]
jmp       near ptr M01_L16
M01_L59
 
mov       rcx,233D9BF4010
cmp       rbp,rcx
je        short M01_L61
mov       rcx,233D9BF6560
cmp       rbp,rcx
je        short M01_L60
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63A5170]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F6056718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L60
 
mov       rdx,rsi
mov       rcx,offset MT_System.UIntPtr
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A24468]
jmp       short M01_L62
M01_L61
 
mov       rdx,rsi
mov       rcx,offset MT_System.IntPtr
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A24468]
M01_L62
 
movzx     eax,al
jmp       near ptr M01_L16
M01_L63
 
mov       rdx,rax
call      qword ptr [7FF9F5DC43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M01_L64
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,98
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
vmovdqa   xmmword ptr [rbp+20],xmm4
vmovdqa   xmmword ptr [rbp+30],xmm4
vmovdqa   xmmword ptr [rbp+40],xmm4
vmovdqa   xmmword ptr [rbp+50],xmm4
mov       [rbp+60],rax
mov       rax,0EC6ABF74AEFB
mov       [rbp],rax
mov       rsi,rcx
mov       rbx,rdx
mov       edi,r8d
mov       r14d,r9d
test      edi,edi
jl        near ptr M02_L06
test      r14d,0FFFFFFFC
jne       near ptr M02_L07
M02_L00
 
cmp       edi,1
jle       near ptr M02_L08
mov       r15d,[rsi+8]
test      r15d,r15d
je        near ptr M02_L08
cmp       dword ptr [rbx+8],0
je        near ptr M02_L10
M02_L01
 
test      [rsp],esp
sub       rsp,200
lea       rcx,[rsp+30]
mov       [rbp+58],rcx
mov       dword ptr [rbp+60],80
xor       ecx,ecx
mov       [rbp+48],rcx
mov       [rbp+50],ecx
lea       rcx,[rsi+0C]
mov       [rbp+38],rcx
mov       [rbp+40],r15d
vmovdqu   xmm0,xmmword ptr [rbx]
vmovdqu   xmmword ptr [rbp+28],xmm0
lea       rcx,[rbp+38]
lea       rdx,[rbp+28]
lea       r8,[rbp+48]
call      qword ptr [7FF9F5DC71B0]; System.String.MakeSeparatorListAny(System.ReadOnlySpan`1, System.ReadOnlySpan`1, System.Collections.Generic.ValueListBuilder`1 ByRef)
mov       eax,[rbp+50]
cmp       eax,[rbp+60]
ja        near ptr M02_L11
mov       r10,[rbp+58]
test      eax,eax
je        near ptr M02_L12
test      r14d,r14d
je        near ptr M02_L05
xor       ecx,ecx
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],rcx
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       [rsp+28],r14d
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DC7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       rbx,rax
M02_L02
 
mov       rdx,[rbp+48]
test      rdx,rdx
je        short M02_L03
xor       ecx,ecx
mov       [rbp+48],rcx
mov       rcx,1F347C01F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65C5188]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M02_L03
 
mov       rax,rbx
mov       rcx,0EC6ABF74AEFB
cmp       [rbp],rcx
je        short M02_L04
call      CORINFO_HELP_FAIL_FAST
M02_L04
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M02_L05
 
xor       r14d,r14d
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],r14
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DC7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       rbx,rax
jmp       short M02_L02
M02_L06
 
mov       ecx,1C7
mov       rdx,7FF9F5C74000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,edi
call      qword ptr [7FF9F688ECB8]
int       3
M02_L07
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F602ECB8]
int       3
M02_L08
 
mov       rcx,rsi
mov       edx,r14d
mov       r8d,edi
call      qword ptr [7FF9F5DC7150]; System.String.CreateSplitArrayOfThisAsSoleValue(System.StringSplitOptions, Int32)
mov       rcx,0EC6ABF74AEFB
cmp       [rbp],rcx
je        short M02_L09
call      CORINFO_HELP_FAIL_FAST
M02_L09
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M02_L10
 
cmp       r15d,edi
jge       near ptr M02_L01
and       r14d,0FFFFFFFD
jmp       near ptr M02_L01
M02_L11
 
call      qword ptr [7FF9F602E9D0]
int       3
M02_L12
 
mov       edi,1
jmp       near ptr M02_L00
 
System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,edx
mov       edi,[rbx+8]
lea       ebp,[rdi-1]
mov       r14d,ebp
xor       r15d,r15d
test      sil,1
je        short M03_L03
xor       r15d,r15d
test      edi,edi
jle       short M03_L03
M03_L00
 
mov       ecx,r15d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M03_L01
mov       rax,[7FFA534C0728]
test      byte ptr [rax+rcx],80
je        short M03_L03
jmp       short M03_L02
M03_L01
 
call      qword ptr [7FFA534A7338]
test      eax,eax
je        short M03_L03
M03_L02
 
inc       r15d
cmp       edi,r15d
jg        short M03_L00
M03_L03
 
test      sil,2
je        near ptr M03_L10
mov       r14d,ebp
cmp       r14d,r15d
jl        short M03_L10
mov       ecx,r14d
or        ecx,r15d
jl        short M03_L07
cmp       edi,r14d
jle       short M03_L07
M03_L04
 
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M03_L05
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M03_L10
jmp       short M03_L06
M03_L05
 
call      qword ptr [7FFA534A7338]
test      eax,eax
je        short M03_L10
M03_L06
 
dec       r14d
cmp       r14d,r15d
jge       short M03_L04
jmp       short M03_L10
M03_L07
 
cmp       r14d,edi
jae       short M03_L14
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M03_L08
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M03_L10
jmp       short M03_L09
M03_L08
 
call      qword ptr [7FFA534A7338]
test      eax,eax
je        short M03_L10
M03_L09
 
dec       r14d
cmp       r14d,r15d
jge       short M03_L07
M03_L10
 
mov       r8d,r14d
sub       r8d,r15d
inc       r8d
cmp       edi,r8d
jne       short M03_L12
mov       rax,rbx
M03_L11
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L12
 
test      r8d,r8d
je        short M03_L13
mov       rcx,rbx
mov       edx,r15d
call      qword ptr [7FFA534A34A0]; Precode of System.String.InternalSubString(Int32, Int32)
jmp       short M03_L11
M03_L13
 
mov       rax,[7FFA534C08A0]
mov       rax,[rax]
jmp       short M03_L11
M03_L14
 
call      qword ptr [7FFA53493D20]; CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.SplitWithTrimEntries()
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,48
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
xor       eax,eax
mov       [rbp-40],rax
mov       [rbp-60],rsp
mov       rbx,rcx
mov       rsi,[rbx+298]
test      rsi,rsi
je        short M00_L00
xor       ecx,ecx
cmp       dword ptr [rsi+8],0
sete      cl
test      ecx,ecx
sete      cl
movzx     ecx,cl
cmp       dword ptr [rsi+8],0
jne       short M00_L01
jmp       short M00_L01
M00_L00
 
xor       ecx,ecx
M00_L01
 
test      ecx,ecx
je        near ptr M00_L23
cmp       dword ptr [rsi+8],0
je        short M00_L05
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       short M00_L02
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L25
jmp       short M00_L03
M00_L02
 
call      qword ptr [7FF9F68DF2E8]
test      eax,eax
jne       near ptr M00_L25
M00_L03
 
mov       ecx,[rsi+8]
dec       ecx
cmp       ecx,[rsi+8]
jae       near ptr M00_L31
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L04
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L25
jmp       short M00_L05
M00_L04
 
call      qword ptr [7FF9F68DF2E8]
test      eax,eax
jne       near ptr M00_L25
M00_L05
 
mov       rcx,offset MT_System.StringSplitOptions
call      CORINFO_HELP_NEWSFAST
mov       dword ptr [rax+8],2
mov       rdx,rax
mov       rcx,1984F6577D8
cmp       [rcx],ecx
call      qword ptr [7FF9F5D2A770]; System.RuntimeType.IsEnumDefined(System.Object)
test      eax,eax
je        near ptr M00_L26
mov       rcx,offset MT_System.Char[]
mov       edx,1
call      CORINFO_HELP_NEWARR_1_VC
mov       word ptr [rax+10],2E
cmp       [rsi],sil
add       rax,10
mov       rcx,rsi
mov       [rbp-50],rax
mov       dword ptr [rbp-48],1
lea       rdx,[rbp-50]
mov       r9d,2
mov       r8d,7FFFFFFF
call      qword ptr [7FF9F5DE70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
mov       rsi,rax
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyCollection`1[[System.String, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
test      rsi,rsi
je        near ptr M00_L28
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+8]
mov       r11,7FF9F5CA10E0
call      qword ptr [r11]
test      eax,eax
je        near ptr M00_L29
mov       rcx,[rdi+8]
mov       r11,7FF9F5CA10E8
call      qword ptr [r11]
mov       rcx,rax
M00_L06
 
mov       [rbp-58],rcx
test      rcx,rcx
je        near ptr M00_L15
mov       rsi,[rcx]
mov       rdi,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rsi,rdi
jne       near ptr M00_L15
jmp       short M00_L09
M00_L07
 
mov       r10,rcx
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       near ptr M00_L18
mov       r15,[r10+10]
cmp       r9d,[r15+8]
jae       short M00_L10
mov       edx,r9d
mov       r13,[r15+rdx*8+10]
M00_L08
 
mov       [rbp-40],r13
mov       r12,[rbx+18]
mov       rdx,[rbp-40]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
mov       rcx,[rbp-58]
M00_L09
 
cmp       rsi,rdi
jne       short M00_L12
mov       rax,rcx
mov       r8d,[rax+8]
inc       r8d
mov       r14d,[rax+0C]
cmp       r8d,r14d
jae       short M00_L11
mov       [rax+8],r8d
jmp       short M00_L07
M00_L10
 
call      CORINFO_HELP_RNGCHKFAIL
M00_L11
 
mov       [rax+8],r14d
jmp       near ptr M00_L21
M00_L12
 
mov       r11,7FF9F5CA10C8
call      qword ptr [r11]
test      eax,eax
jne       near ptr M00_L19
mov       rcx,[rbp-58]
jmp       near ptr M00_L21
M00_L13
 
mov       r10,rcx
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       short M00_L18
mov       r15,[r10+10]
cmp       r9d,[r15+8]
jae       short M00_L10
mov       edx,r9d
mov       r13,[r15+rdx*8+10]
M00_L14
 
mov       [rbp-40],r13
mov       r12,[rbx+18]
mov       rdx,[rbp-40]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
mov       rcx,[rbp-58]
M00_L15
 
mov       rsi,[rcx]
mov       rdi,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rsi,rdi
jne       short M00_L16
mov       rax,rcx
mov       r8d,[rax+8]
inc       r8d
mov       r14d,[rax+0C]
cmp       r8d,r14d
jae       short M00_L17
mov       [rax+8],r8d
jmp       short M00_L13
M00_L16
 
mov       r11,7FF9F5CA10C8
call      qword ptr [r11]
test      eax,eax
jne       short M00_L20
mov       rcx,[rbp-58]
jmp       short M00_L21
M00_L17
 
mov       [rax+8],r14d
jmp       short M00_L21
M00_L18
 
mov       ecx,[r10+8]
call      qword ptr [7FF9F604EFD0]
int       3
M00_L19
 
mov       rcx,[rbp-58]
mov       r11,7FF9F5CA10D0
call      qword ptr [r11]
mov       r13,rax
jmp       near ptr M00_L08
M00_L20
 
mov       rcx,[rbp-58]
mov       r11,7FF9F5CA10D0
call      qword ptr [r11]
mov       r13,rax
jmp       near ptr M00_L14
M00_L21
 
cmp       rsi,rdi
jne       near ptr M00_L30
M00_L22
 
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M00_L23
 
call      qword ptr [7FF9F6374570]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L24
call      qword ptr [7FF9F63742B8]
mov       rbx,rax
M00_L24
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       r13,rax
mov       rcx,r13
mov       rdx,1984F648468
mov       r8,rbx
call      qword ptr [7FF9F6076670]
mov       rcx,r13
call      CORINFO_HELP_THROW
M00_L25
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DE73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L05
M00_L26
 
call      qword ptr [7FF9F6374378]
mov       rdi,rax
test      rdi,rdi
jne       short M00_L27
call      qword ptr [7FF9F63742D0]
mov       rdi,rax
M00_L27
 
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,1984F649EE0
mov       r8,rdi
call      qword ptr [7FF9F5E9D470]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M00_L28
 
mov       ecx,14
call      qword ptr [7FF9F604ED00]
int       3
M00_L29
 
mov       rcx,7FF9F5D25120
mov       edx,1D
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,157BF801FF8
mov       rcx,[rcx]
jmp       near ptr M00_L06
M00_L30
 
mov       r11,7FF9F5CA10D8
call      qword ptr [r11]
jmp       near ptr M00_L22
M00_L31
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M00_L32
mov       rcx,[rbp-58]
mov       rsi,[rcx]
mov       rdi,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rsi,rdi
je        short M00_L32
mov       r11,7FF9F5CA10D8
call      qword ptr [r11]
M00_L32
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.RuntimeType.IsEnumDefined(System.Object)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
vzeroupper
mov       rbx,rcx
mov       rsi,rdx
M01_L00
 
test      rsi,rsi
je        near ptr M01_L23
mov       rcx,[rbx+18]
mov       rax,rcx
test      cl,2
jne       short M01_L01
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M01_L02
M01_L01
 
xor       ecx,ecx
M01_L02
 
movzx     ecx,cl
test      ecx,ecx
je        near ptr M01_L25
mov       rcx,rsi
call      System.Object.GetType()
mov       rdi,rax
mov       rcx,[rdi+18]
mov       rax,rcx
test      cl,2
jne       short M01_L03
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M01_L04
M01_L03
 
xor       ecx,ecx
M01_L04
 
movzx     ecx,cl
test      ecx,ecx
je        short M01_L08
cmp       rbx,rdi
jne       near ptr M01_L24
M01_L05
 
mov       rcx,[rdi+18]
mov       rax,rcx
mov       rdx,rax
test      al,2
jne       short M01_L06
mov       rax,[rdx+10]
mov       rdx,offset MT_System.Enum
cmp       rax,rdx
sete      al
movzx     eax,al
jmp       short M01_L07
M01_L06
 
xor       eax,eax
M01_L07
 
movzx     eax,al
test      eax,eax
je        near ptr M01_L25
mov       rax,157BF8000A0
mov       rbp,[rax]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M01_L59
mov       ecx,eax
mov       rcx,[rbp+rcx*8+10]
mov       rdi,rcx
M01_L08
 
mov       rcx,1984F640020
cmp       rdi,rcx
je        near ptr M01_L26
mov       rcx,rdi
call      qword ptr [7FF9F5D36070]; System.Type.IsIntegerType(System.Type)
test      eax,eax
je        near ptr M01_L28
mov       rcx,157BF8000A0
mov       rbp,[rcx]
mov       rcx,[rbx+18]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M01_L59
mov       ecx,eax
mov       rbp,[rbp+rcx*8+10]
cmp       rbp,rdi
jne       near ptr M01_L29
test      rbp,rbp
je        near ptr M01_L22
mov       rcx,[rbp+10]
test      rcx,rcx
je        near ptr M01_L18
mov       rax,[rcx]
test      rax,rax
je        near ptr M01_L18
M01_L09
 
mov       edi,[rax+90]
test      edi,edi
je        near ptr M01_L39
M01_L10
 
add       edi,0FFFFFFFC
cmp       edi,5
jne       near ptr M01_L20
mov       rdx,offset MT_System.Int32
cmp       [rsi],rdx
je        short M01_L11
mov       rdx,rsi
mov       rcx,offset MT_System.Int32
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
M01_L11
 
mov       r14d,[rsi+8]
mov       rcx,[rbx+10]
test      rcx,rcx
je        short M01_L19
mov       rcx,[rcx]
M01_L12
 
test      rcx,rcx
je        short M01_L15
mov       rax,[rcx+78]
M01_L13
 
test      rax,rax
je        short M01_L14
mov       rcx,offset MT_System.Enum+EnumInfo`1[[System.UInt32, System.Private.CoreLib]]
cmp       [rax],rcx
je        short M01_L16
M01_L14
 
mov       rcx,rbx
xor       edx,edx
call      qword ptr [7FF9F62064D8]; System.Enum.g__InitializeEnumInfo|7_0[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, Boolean)
jmp       short M01_L16
M01_L15
 
xor       eax,eax
jmp       short M01_L13
M01_L16
 
mov       r15,[rax+8]
cmp       byte ptr [rax+19],0
je        near ptr M01_L30
mov       eax,r14d
mov       edx,[r15+8]
cmp       rdx,rax
seta      al
movzx     eax,al
M01_L17
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L18
 
mov       rcx,rbp
call      qword ptr [7FF9F5D36658]; System.RuntimeType.InitializeCache()
jmp       near ptr M01_L09
M01_L19
 
xor       ecx,ecx
jmp       short M01_L12
M01_L20
 
cmp       edi,0A
ja        near ptr M01_L35
mov       edx,edi
lea       rcx,[7FF9F693C698]
mov       ecx,[rcx+rdx*4]
lea       rax,[M01_L00]
add       rcx,rax
jmp       rcx
mov       rcx,offset MT_System.Char
cmp       [rsi],rcx
je        short M01_L21
mov       rdx,rsi
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
M01_L21
 
movzx     edx,word ptr [rsi+8]
mov       rcx,rbx
call      qword ptr [7FF9F6A3C1B0]
jmp       short M01_L17
M01_L22
 
xor       edi,edi
jmp       near ptr M01_L10
mov       rdx,rsi
mov       rcx,offset MT_System.SByte
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A3C198]
jmp       near ptr M01_L17
mov       rdx,rsi
mov       rcx,offset MT_System.Byte
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A3C198]
jmp       near ptr M01_L17
mov       rdx,rsi
mov       rcx,offset MT_System.Int16
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A3C180]
jmp       near ptr M01_L17
mov       rdx,rsi
mov       rcx,offset MT_System.UInt16
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A3C180]
jmp       near ptr M01_L17
M01_L23
 
mov       ecx,2E5
mov       rdx,7FF9F5C94000
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FF9F60766E8]
int       3
M01_L24
 
mov       rcx,rdi
mov       rdx,rbx
call      System.RuntimeTypeHandle.IsEquivalentTo(System.RuntimeType, System.RuntimeType)
test      eax,eax
jne       near ptr M01_L05
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63AC690]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbx
call      qword ptr [7FF9F63AC060]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F5DEF708]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L25
 
call      qword ptr [7FF9F5D37138]
int       3
M01_L26
 
mov       rcx,rbx
call      qword ptr [7FF9F5D34918]; System.Enum.GetNamesNoCopy(System.RuntimeType)
mov       r8,rsi
mov       rcx,offset MT_System.String
cmp       [r8],rcx
je        short M01_L27
mov       rdx,rsi
call      qword ptr [7FF9F5DE43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M01_L27
 
mov       rdx,rax
mov       rcx,offset MD_System.Array.IndexOf[[System.String, System.Private.CoreLib]](System.String[], System.String)
call      qword ptr [7FF9F68A7D98]
not       eax
shr       eax,1F
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L28
 
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63C4AE0]
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F6076718]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L29
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63AC6F0]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbp
call      qword ptr [7FF9F63AC060]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F5DEF708]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L30
 
test      r15,r15
jne       short M01_L31
xor       ecx,ecx
xor       r8d,r8d
jmp       short M01_L32
M01_L31
 
lea       rcx,[r15+10]
mov       r8d,[r15+8]
M01_L32
 
cmp       dword ptr [r15+8],20
jle       short M01_L33
mov       edx,r8d
mov       r8d,r14d
call      qword ptr [7FF9F6A3DF08]
jmp       short M01_L34
M01_L33
 
mov       edx,r14d
call      qword ptr [7FF9F6A3E3D0]; System.SpanHelpers.NonPackedIndexOfValueType[[System.Int32, System.Private.CoreLib],[System.SpanHelpers+DontNegate`1[[System.Int32, System.Private.CoreLib]], System.Private.CoreLib]](Int32 ByRef, Int32, Int32)
M01_L34
 
not       eax
shr       eax,1F
jmp       near ptr M01_L17
mov       rdx,rsi
mov       rcx,offset MT_System.UInt32
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       edx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F68A7DC8]; System.Enum.IsDefinedPrimitive[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, UInt32)
jmp       near ptr M01_L17
mov       rdx,rsi
mov       rcx,offset MT_System.Int64
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A37A68]
jmp       near ptr M01_L17
mov       rdx,rsi
mov       rcx,offset MT_System.UInt64
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A37A68]
jmp       near ptr M01_L17
mov       rdx,rsi
mov       rcx,offset MT_System.Single
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovss    xmm1,dword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A37360]
jmp       near ptr M01_L17
mov       rdx,rsi
mov       rcx,offset MT_System.Double
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovsd    xmm1,qword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A37348]
jmp       near ptr M01_L17
M01_L35
 
mov       rcx,1984F644010
cmp       rbp,rcx
je        short M01_L37
mov       rcx,1984F646560
cmp       rbp,rcx
je        short M01_L36
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63C4AE0]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F6076718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L36
 
mov       rdx,rsi
mov       rcx,offset MT_System.UIntPtr
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A36C40]
jmp       short M01_L38
M01_L37
 
mov       rdx,rsi
mov       rcx,offset MT_System.IntPtr
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A36C40]
M01_L38
 
movzx     eax,al
jmp       near ptr M01_L17
M01_L39
 
mov       r15,rbp
mov       rcx,r15
call      qword ptr [7FF9F5D36AA8]; System.RuntimeType.get_IsActualEnum()
test      eax,eax
je        short M01_L40
mov       rcx,rbp
call      qword ptr [7FF9F5D2A728]; System.RuntimeType.GetEnumUnderlyingType()
mov       r15,rax
test      r15,r15
je        short M01_L40
mov       rcx,offset MT_System.RuntimeType
cmp       [r15],rcx
je        short M01_L40
mov       rdx,rax
call      qword ptr [7FF9F5DE43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M01_L40
 
mov       rcx,1984F646498
cmp       r15,rcx
jne       short M01_L41
mov       edi,5
jmp       near ptr M01_L56
M01_L41
 
mov       rcx,1984F644198
cmp       r15,rcx
jne       short M01_L42
mov       edi,6
jmp       near ptr M01_L56
M01_L42
 
mov       rcx,1984F6464C0
cmp       r15,rcx
jne       short M01_L43
mov       edi,7
jmp       near ptr M01_L56
M01_L43
 
mov       rcx,1984F644038
cmp       r15,rcx
jne       short M01_L44
mov       edi,8
jmp       near ptr M01_L56
M01_L44
 
mov       rcx,1984F644248
cmp       r15,rcx
jne       short M01_L45
mov       edi,9
jmp       near ptr M01_L56
M01_L45
 
mov       rcx,1984F643F48
cmp       r15,rcx
jne       short M01_L46
mov       edi,0A
jmp       near ptr M01_L56
M01_L46
 
mov       rcx,1984F6464E8
cmp       r15,rcx
jne       short M01_L47
mov       edi,0B
jmp       near ptr M01_L56
M01_L47
 
mov       rcx,1984F643D90
cmp       r15,rcx
jne       short M01_L48
mov       edi,0C
jmp       near ptr M01_L56
M01_L48
 
mov       rcx,1984F646448
cmp       r15,rcx
jne       short M01_L49
mov       edi,3
jmp       near ptr M01_L56
M01_L49
 
mov       rcx,1984F646470
cmp       r15,rcx
jne       short M01_L50
mov       edi,4
jmp       near ptr M01_L56
M01_L50
 
mov       rcx,1984F646510
cmp       r15,rcx
jne       short M01_L51
mov       edi,0D
jmp       short M01_L56
M01_L51
 
mov       rcx,1984F646538
cmp       r15,rcx
jne       short M01_L52
mov       edi,0E
jmp       short M01_L56
M01_L52
 
mov       rcx,1984F6472F8
cmp       r15,rcx
jne       short M01_L53
mov       edi,0F
jmp       short M01_L56
M01_L53
 
mov       rcx,1984F643C08
cmp       r15,rcx
jne       short M01_L54
mov       edi,10
jmp       short M01_L56
M01_L54
 
mov       rcx,1984F640020
cmp       r15,rcx
jne       short M01_L55
mov       edi,12
jmp       short M01_L56
M01_L55
 
mov       rcx,1984F6553E0
mov       edi,1
mov       eax,2
cmp       r15,rcx
cmove     edi,eax
M01_L56
 
cmp       qword ptr [rbp+10],0
je        short M01_L57
mov       rcx,[rbp+10]
mov       rax,[rcx]
test      rax,rax
je        short M01_L57
jmp       short M01_L58
M01_L57
 
mov       rcx,rbp
call      qword ptr [7FF9F5D36658]; System.RuntimeType.InitializeCache()
M01_L58
 
mov       [rax+90],edi
jmp       near ptr M01_L10
M01_L59
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,98
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
vmovdqa   xmmword ptr [rbp+20],xmm4
vmovdqa   xmmword ptr [rbp+30],xmm4
vmovdqa   xmmword ptr [rbp+40],xmm4
vmovdqa   xmmword ptr [rbp+50],xmm4
mov       [rbp+60],rax
mov       rax,507302621F7
mov       [rbp],rax
mov       rsi,rcx
mov       rbx,rdx
mov       edi,r8d
mov       r14d,r9d
test      edi,edi
jl        near ptr M02_L06
test      r14d,0FFFFFFFC
jne       near ptr M02_L07
M02_L00
 
cmp       edi,1
jle       near ptr M02_L08
mov       r15d,[rsi+8]
test      r15d,r15d
je        near ptr M02_L08
cmp       dword ptr [rbx+8],0
je        near ptr M02_L10
M02_L01
 
test      [rsp],esp
sub       rsp,200
lea       rcx,[rsp+30]
mov       [rbp+58],rcx
mov       dword ptr [rbp+60],80
xor       ecx,ecx
mov       [rbp+48],rcx
mov       [rbp+50],ecx
lea       rcx,[rsi+0C]
mov       [rbp+38],rcx
mov       [rbp+40],r15d
vmovdqu   xmm0,xmmword ptr [rbx]
vmovdqu   xmmword ptr [rbp+28],xmm0
lea       rcx,[rbp+38]
lea       rdx,[rbp+28]
lea       r8,[rbp+48]
call      qword ptr [7FF9F5DE71B0]; System.String.MakeSeparatorListAny(System.ReadOnlySpan`1, System.ReadOnlySpan`1, System.Collections.Generic.ValueListBuilder`1 ByRef)
mov       eax,[rbp+50]
cmp       eax,[rbp+60]
ja        near ptr M02_L11
mov       r10,[rbp+58]
test      eax,eax
je        near ptr M02_L12
test      r14d,r14d
je        near ptr M02_L05
xor       ecx,ecx
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],rcx
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       [rsp+28],r14d
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DE7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       rbx,rax
M02_L02
 
mov       rdx,[rbp+48]
test      rdx,rdx
je        short M02_L03
xor       ecx,ecx
mov       [rbp+48],rcx
mov       rcx,157BF801F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65E51A8]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M02_L03
 
mov       rax,rbx
mov       rcx,507302621F7
cmp       [rbp],rcx
je        short M02_L04
call      CORINFO_HELP_FAIL_FAST
M02_L04
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M02_L05
 
xor       r14d,r14d
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],r14
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DE7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       rbx,rax
jmp       short M02_L02
M02_L06
 
mov       ecx,1C7
mov       rdx,7FF9F5C94000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,edi
call      qword ptr [7FF9F68AECB8]
int       3
M02_L07
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F604ECB8]
int       3
M02_L08
 
mov       rcx,rsi
mov       edx,r14d
mov       r8d,edi
call      qword ptr [7FF9F5DE7150]; System.String.CreateSplitArrayOfThisAsSoleValue(System.StringSplitOptions, Int32)
mov       rcx,507302621F7
cmp       [rbp],rcx
je        short M02_L09
call      CORINFO_HELP_FAIL_FAST
M02_L09
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M02_L10
 
cmp       r15d,edi
jge       near ptr M02_L01
and       r14d,0FFFFFFFD
jmp       near ptr M02_L01
M02_L11
 
call      qword ptr [7FF9F604E9D0]
int       3
M02_L12
 
mov       edi,1
jmp       near ptr M02_L00
 
System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,edx
mov       edi,[rbx+8]
lea       ebp,[rdi-1]
mov       r14d,ebp
xor       r15d,r15d
test      sil,1
je        short M03_L03
xor       r15d,r15d
test      edi,edi
jle       short M03_L03
M03_L00
 
mov       ecx,r15d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M03_L01
mov       rax,[7FFA534C0728]
test      byte ptr [rax+rcx],80
je        short M03_L03
jmp       short M03_L02
M03_L01
 
call      qword ptr [7FFA534A7338]
test      eax,eax
je        short M03_L03
M03_L02
 
inc       r15d
cmp       edi,r15d
jg        short M03_L00
M03_L03
 
test      sil,2
je        near ptr M03_L10
mov       r14d,ebp
cmp       r14d,r15d
jl        short M03_L10
mov       ecx,r14d
or        ecx,r15d
jl        short M03_L07
cmp       edi,r14d
jle       short M03_L07
M03_L04
 
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M03_L05
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M03_L10
jmp       short M03_L06
M03_L05
 
call      qword ptr [7FFA534A7338]
test      eax,eax
je        short M03_L10
M03_L06
 
dec       r14d
cmp       r14d,r15d
jge       short M03_L04
jmp       short M03_L10
M03_L07
 
cmp       r14d,edi
jae       short M03_L14
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M03_L08
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M03_L10
jmp       short M03_L09
M03_L08
 
call      qword ptr [7FFA534A7338]
test      eax,eax
je        short M03_L10
M03_L09
 
dec       r14d
cmp       r14d,r15d
jge       short M03_L07
M03_L10
 
mov       r8d,r14d
sub       r8d,r15d
inc       r8d
cmp       edi,r8d
jne       short M03_L12
mov       rax,rbx
M03_L11
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L12
 
test      r8d,r8d
je        short M03_L13
mov       rcx,rbx
mov       edx,r15d
call      qword ptr [7FFA534A34A0]; Precode of System.String.InternalSubString(Int32, Int32)
jmp       short M03_L11
M03_L13
 
mov       rax,[7FFA534C08A0]
mov       rax,[rax]
jmp       short M03_L11
M03_L14
 
call      qword ptr [7FFA53493D20]; CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.SplitWithTrimEntries()
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,48
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
xor       eax,eax
mov       [rbp-40],rax
mov       [rbp-60],rsp
mov       rbx,rcx
mov       rsi,[rbx+298]
test      rsi,rsi
je        short M00_L00
xor       ecx,ecx
cmp       dword ptr [rsi+8],0
sete      cl
test      ecx,ecx
sete      cl
movzx     ecx,cl
cmp       dword ptr [rsi+8],0
jne       short M00_L01
jmp       short M00_L01
M00_L00
 
xor       ecx,ecx
M00_L01
 
test      ecx,ecx
je        near ptr M00_L23
cmp       dword ptr [rsi+8],0
je        short M00_L05
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       short M00_L02
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L25
jmp       short M00_L03
M00_L02
 
call      qword ptr [7FF9F671E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L25
M00_L03
 
mov       ecx,[rsi+8]
dec       ecx
cmp       ecx,[rsi+8]
jae       near ptr M00_L31
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L04
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L25
jmp       short M00_L05
M00_L04
 
call      qword ptr [7FF9F671E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L25
M00_L05
 
mov       rcx,offset MT_System.StringSplitOptions
call      CORINFO_HELP_NEWSFAST
mov       dword ptr [rax+8],2
mov       rdx,rax
mov       rcx,243082A77D8
cmp       [rcx],ecx
call      qword ptr [7FF9F5D0A770]; System.RuntimeType.IsEnumDefined(System.Object)
test      eax,eax
je        near ptr M00_L26
mov       rcx,offset MT_System.Char[]
mov       edx,1
call      CORINFO_HELP_NEWARR_1_VC
mov       word ptr [rax+10],2E
cmp       [rsi],sil
add       rax,10
mov       rcx,rsi
mov       [rbp-50],rax
mov       dword ptr [rbp-48],1
lea       rdx,[rbp-50]
mov       r9d,2
mov       r8d,7FFFFFFF
call      qword ptr [7FF9F5DC70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
mov       rsi,rax
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyCollection`1[[System.String, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
test      rsi,rsi
je        near ptr M00_L28
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+8]
mov       r11,7FF9F5C810E0
call      qword ptr [r11]
test      eax,eax
je        near ptr M00_L29
mov       rcx,[rdi+8]
mov       r11,7FF9F5C810E8
call      qword ptr [r11]
mov       rsi,rax
M00_L06
 
mov       [rbp-58],rsi
test      rsi,rsi
je        near ptr M00_L15
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
jne       near ptr M00_L15
jmp       short M00_L09
M00_L07
 
mov       r10,rsi
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       near ptr M00_L18
mov       r13,[r10+10]
cmp       r9d,[r13+8]
jae       short M00_L10
mov       ecx,r9d
mov       r12,[r13+rcx*8+10]
M00_L08
 
mov       [rbp-40],r12
mov       r12,[rbx+18]
mov       rdx,[rbp-40]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
M00_L09
 
cmp       rdi,r14
jne       short M00_L12
mov       rax,rsi
mov       r8d,[rax+8]
inc       r8d
mov       r15d,[rax+0C]
cmp       r8d,r15d
jae       short M00_L11
mov       [rax+8],r8d
jmp       short M00_L07
M00_L10
 
call      CORINFO_HELP_RNGCHKFAIL
M00_L11
 
mov       [rax+8],r15d
jmp       near ptr M00_L21
M00_L12
 
mov       rcx,rsi
mov       r11,7FF9F5C810C8
call      qword ptr [r11]
test      eax,eax
jne       near ptr M00_L19
jmp       near ptr M00_L21
M00_L13
 
mov       r10,rsi
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       short M00_L18
mov       r13,[r10+10]
cmp       r9d,[r13+8]
jae       short M00_L10
mov       ecx,r9d
mov       r12,[r13+rcx*8+10]
M00_L14
 
mov       [rbp-40],r12
mov       r12,[rbx+18]
mov       rdx,[rbp-40]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
M00_L15
 
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
jne       short M00_L16
mov       rax,rsi
mov       r8d,[rax+8]
inc       r8d
mov       r15d,[rax+0C]
cmp       r8d,r15d
jae       short M00_L17
mov       [rax+8],r8d
jmp       short M00_L13
M00_L16
 
mov       rcx,rsi
mov       r11,7FF9F5C810C8
call      qword ptr [r11]
test      eax,eax
jne       short M00_L20
jmp       short M00_L21
M00_L17
 
mov       [rax+8],r15d
jmp       short M00_L21
M00_L18
 
mov       ecx,[r10+8]
call      qword ptr [7FF9F602EFD0]
int       3
M00_L19
 
mov       rcx,rsi
mov       r11,7FF9F5C810D0
call      qword ptr [r11]
mov       r12,rax
jmp       near ptr M00_L08
M00_L20
 
mov       rcx,rsi
mov       r11,7FF9F5C810D0
call      qword ptr [r11]
mov       r12,rax
jmp       near ptr M00_L14
M00_L21
 
cmp       rdi,r14
jne       near ptr M00_L30
M00_L22
 
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M00_L23
 
call      qword ptr [7FF9F6345368]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L24
call      qword ptr [7FF9F63450B0]
mov       rbx,rax
M00_L24
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,24308298468
mov       r8,rbx
call      qword ptr [7FF9F6056670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L25
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DC73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L05
M00_L26
 
call      qword ptr [7FF9F6345170]
mov       rdi,rax
test      rdi,rdi
jne       short M00_L27
call      qword ptr [7FF9F63450C8]
mov       rdi,rax
M00_L27
 
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,24308299EE0
mov       r8,rdi
call      qword ptr [7FF9F5E7D470]
mov       rcx,r14
call      CORINFO_HELP_THROW
M00_L28
 
mov       ecx,14
call      qword ptr [7FF9F602ED00]
int       3
M00_L29
 
mov       rcx,7FF9F5D05120
mov       edx,20
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,2027A402000
mov       rsi,[rcx]
jmp       near ptr M00_L06
M00_L30
 
mov       rcx,rsi
mov       r11,7FF9F5C810D8
call      qword ptr [r11]
jmp       near ptr M00_L22
M00_L31
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M00_L32
mov       rsi,[rbp-58]
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
je        short M00_L32
mov       rcx,rsi
mov       r11,7FF9F5C810D8
call      qword ptr [r11]
M00_L32
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
sub       rsp,28
movzx     ecx,cx
call      qword ptr [7FFA534A7370]; Precode of System.Globalization.CharUnicodeInfo.GetCategoryCasingTableOffsetNoBoundsChecks(UInt32)
mov       rcx,[7FFA534C0750]
cmp       byte ptr [rcx+rax],0
setl      al
movzx     eax,al
add       rsp,28
ret
 
System.RuntimeType.IsEnumDefined(System.Object)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
vzeroupper
mov       rbx,rcx
mov       rsi,rdx
M02_L00
 
test      rsi,rsi
je        near ptr M02_L24
mov       rcx,[rbx+18]
mov       rax,rcx
test      cl,2
jne       short M02_L01
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M02_L02
M02_L01
 
xor       ecx,ecx
M02_L02
 
movzx     ecx,cl
test      ecx,ecx
je        near ptr M02_L26
mov       rcx,rsi
call      System.Object.GetType()
mov       rdi,rax
mov       rcx,[rdi+18]
mov       rax,rcx
test      cl,2
jne       short M02_L03
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M02_L04
M02_L03
 
xor       ecx,ecx
M02_L04
 
movzx     ecx,cl
test      ecx,ecx
je        short M02_L08
cmp       rbx,rdi
jne       near ptr M02_L25
M02_L05
 
mov       rcx,[rdi+18]
mov       rax,rcx
mov       rdx,rax
test      al,2
jne       short M02_L06
mov       rax,[rdx+10]
mov       rdx,offset MT_System.Enum
cmp       rax,rdx
sete      al
movzx     eax,al
jmp       short M02_L07
M02_L06
 
xor       eax,eax
M02_L07
 
movzx     eax,al
test      eax,eax
je        near ptr M02_L26
mov       rax,2027A4000A0
mov       rbp,[rax]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M02_L60
mov       ecx,eax
mov       rcx,[rbp+rcx*8+10]
mov       rdi,rcx
M02_L08
 
mov       rcx,24308290020
cmp       rdi,rcx
je        near ptr M02_L27
mov       rcx,rdi
call      qword ptr [7FF9F5D16070]; System.Type.IsIntegerType(System.Type)
test      eax,eax
je        near ptr M02_L29
mov       rcx,2027A4000A0
mov       rbp,[rcx]
mov       rcx,[rbx+18]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M02_L60
mov       ecx,eax
mov       rbp,[rbp+rcx*8+10]
cmp       rbp,rdi
jne       near ptr M02_L30
test      rbp,rbp
je        near ptr M02_L23
mov       rcx,[rbp+10]
test      rcx,rcx
je        near ptr M02_L19
mov       rax,[rcx]
test      rax,rax
je        near ptr M02_L19
M02_L09
 
mov       edi,[rax+90]
test      edi,edi
je        near ptr M02_L40
M02_L10
 
add       edi,0FFFFFFFC
cmp       edi,5
jne       near ptr M02_L22
mov       rdx,offset MT_System.Int32
cmp       [rsi],rdx
je        short M02_L11
mov       rdx,rsi
mov       rcx,offset MT_System.Int32
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
M02_L11
 
mov       r14d,[rsi+8]
mov       rcx,[rbx+10]
test      rcx,rcx
je        short M02_L20
mov       rcx,[rcx]
M02_L12
 
test      rcx,rcx
je        short M02_L15
mov       rax,[rcx+78]
M02_L13
 
test      rax,rax
je        short M02_L14
mov       rcx,offset MT_System.Enum+EnumInfo`1[[System.UInt32, System.Private.CoreLib]]
cmp       [rax],rcx
je        short M02_L17
M02_L14
 
mov       rcx,rbx
xor       edx,edx
call      qword ptr [7FF9F61E7528]; System.Enum.g__InitializeEnumInfo|7_0[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, Boolean)
jmp       short M02_L17
M02_L15
 
xor       eax,eax
jmp       short M02_L13
M02_L16
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L17
 
mov       r15,[rax+8]
cmp       byte ptr [rax+19],0
je        near ptr M02_L31
mov       eax,r14d
mov       edx,[r15+8]
cmp       rdx,rax
seta      al
movzx     eax,al
M02_L18
 
jmp       short M02_L16
M02_L19
 
mov       rcx,rbp
call      qword ptr [7FF9F5D16658]; System.RuntimeType.InitializeCache()
jmp       near ptr M02_L09
M02_L20
 
xor       ecx,ecx
jmp       short M02_L12
mov       rcx,offset MT_System.Char
cmp       [rsi],rcx
je        short M02_L21
mov       rdx,rsi
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
M02_L21
 
movzx     edx,word ptr [rsi+8]
mov       rcx,rbx
call      qword ptr [7FF9F6A17F60]
jmp       short M02_L16
M02_L22
 
cmp       edi,0A
ja        near ptr M02_L36
mov       edx,edi
lea       rcx,[7FF9F691DD40]
mov       ecx,[rcx+rdx*4]
lea       rax,[M02_L00]
add       rcx,rax
jmp       rcx
M02_L23
 
xor       edi,edi
jmp       near ptr M02_L10
mov       rdx,rsi
mov       rcx,offset MT_System.SByte
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A17F48]
jmp       near ptr M02_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Byte
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A17F48]
jmp       near ptr M02_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Int16
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A17F30]
jmp       near ptr M02_L16
mov       rdx,rsi
mov       rcx,offset MT_System.UInt16
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A17F30]
jmp       near ptr M02_L16
M02_L24
 
mov       ecx,2E5
mov       rdx,7FF9F5C74000
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FF9F60566E8]
int       3
M02_L25
 
mov       rcx,rdi
mov       rdx,rbx
call      System.RuntimeTypeHandle.IsEquivalentTo(System.RuntimeType, System.RuntimeType)
test      eax,eax
jne       near ptr M02_L05
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F637CD98]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbx
call      qword ptr [7FF9F637C768]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F5DCF708]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L26
 
call      qword ptr [7FF9F5D17138]
int       3
M02_L27
 
mov       rcx,rbx
call      qword ptr [7FF9F5D14918]; System.Enum.GetNamesNoCopy(System.RuntimeType)
mov       r8,rsi
mov       rcx,offset MT_System.String
cmp       [r8],rcx
je        short M02_L28
mov       rdx,rsi
call      qword ptr [7FF9F5DC43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M02_L28
 
mov       rdx,rax
mov       rcx,offset MD_System.Array.IndexOf[[System.String, System.Private.CoreLib]](System.String[], System.String)
call      qword ptr [7FF9F6887AF8]
not       eax
shr       eax,1F
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L29
 
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63A5170]
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F6056718]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M02_L30
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F637CDF8]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbp
call      qword ptr [7FF9F637C768]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F5DCF708]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L31
 
test      r15,r15
jne       short M02_L32
xor       ecx,ecx
xor       r8d,r8d
jmp       short M02_L33
M02_L32
 
lea       rcx,[r15+10]
mov       r8d,[r15+8]
M02_L33
 
cmp       dword ptr [r15+8],20
jle       short M02_L34
mov       edx,r8d
mov       r8d,r14d
call      qword ptr [7FF9F6A1DCC8]
jmp       short M02_L35
M02_L34
 
mov       edx,r14d
call      qword ptr [7FF9F6A1E190]; System.SpanHelpers.NonPackedIndexOfValueType[[System.Int32, System.Private.CoreLib],[System.SpanHelpers+DontNegate`1[[System.Int32, System.Private.CoreLib]], System.Private.CoreLib]](Int32 ByRef, Int32, Int32)
M02_L35
 
not       eax
shr       eax,1F
jmp       near ptr M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.UInt32
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       edx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6887B28]; System.Enum.IsDefinedPrimitive[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, UInt32)
jmp       near ptr M02_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Int64
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A17828]
jmp       near ptr M02_L16
mov       rdx,rsi
mov       rcx,offset MT_System.UInt64
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A17828]
jmp       near ptr M02_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Single
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovss    xmm1,dword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A17120]
jmp       near ptr M02_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Double
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovsd    xmm1,qword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A17108]
jmp       near ptr M02_L16
M02_L36
 
mov       rcx,24308294010
cmp       rbp,rcx
je        short M02_L38
mov       rcx,24308296560
cmp       rbp,rcx
je        short M02_L37
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63A5170]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F6056718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L37
 
mov       rdx,rsi
mov       rcx,offset MT_System.UIntPtr
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A16A00]
jmp       short M02_L39
M02_L38
 
mov       rdx,rsi
mov       rcx,offset MT_System.IntPtr
call      qword ptr [7FF9F5DC4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A16A00]
M02_L39
 
movzx     eax,al
jmp       near ptr M02_L16
M02_L40
 
mov       r15,rbp
mov       rcx,r15
call      qword ptr [7FF9F5D16AA8]; System.RuntimeType.get_IsActualEnum()
test      eax,eax
je        short M02_L41
mov       rcx,rbp
call      qword ptr [7FF9F5D0A728]; System.RuntimeType.GetEnumUnderlyingType()
mov       r15,rax
test      r15,r15
je        short M02_L41
mov       rcx,offset MT_System.RuntimeType
cmp       [r15],rcx
je        short M02_L41
mov       rdx,rax
call      qword ptr [7FF9F5DC43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M02_L41
 
mov       rcx,24308296498
cmp       r15,rcx
jne       short M02_L42
mov       edi,5
jmp       near ptr M02_L57
M02_L42
 
mov       rcx,24308294198
cmp       r15,rcx
jne       short M02_L43
mov       edi,6
jmp       near ptr M02_L57
M02_L43
 
mov       rcx,243082964C0
cmp       r15,rcx
jne       short M02_L44
mov       edi,7
jmp       near ptr M02_L57
M02_L44
 
mov       rcx,24308294038
cmp       r15,rcx
jne       short M02_L45
mov       edi,8
jmp       near ptr M02_L57
M02_L45
 
mov       rcx,24308294248
cmp       r15,rcx
jne       short M02_L46
mov       edi,9
jmp       near ptr M02_L57
M02_L46
 
mov       rcx,24308293F48
cmp       r15,rcx
jne       short M02_L47
mov       edi,0A
jmp       near ptr M02_L57
M02_L47
 
mov       rcx,243082964E8
cmp       r15,rcx
jne       short M02_L48
mov       edi,0B
jmp       near ptr M02_L57
M02_L48
 
mov       rcx,24308293D90
cmp       r15,rcx
jne       short M02_L49
mov       edi,0C
jmp       near ptr M02_L57
M02_L49
 
mov       rcx,24308296448
cmp       r15,rcx
jne       short M02_L50
mov       edi,3
jmp       near ptr M02_L57
M02_L50
 
mov       rcx,24308296470
cmp       r15,rcx
jne       short M02_L51
mov       edi,4
jmp       near ptr M02_L57
M02_L51
 
mov       rcx,24308296510
cmp       r15,rcx
jne       short M02_L52
mov       edi,0D
jmp       short M02_L57
M02_L52
 
mov       rcx,24308296538
cmp       r15,rcx
jne       short M02_L53
mov       edi,0E
jmp       short M02_L57
M02_L53
 
mov       rcx,243082971E0
cmp       r15,rcx
jne       short M02_L54
mov       edi,0F
jmp       short M02_L57
M02_L54
 
mov       rcx,24308293C08
cmp       r15,rcx
jne       short M02_L55
mov       edi,10
jmp       short M02_L57
M02_L55
 
mov       rcx,24308290020
cmp       r15,rcx
jne       short M02_L56
mov       edi,12
jmp       short M02_L57
M02_L56
 
mov       rcx,243082A53E0
mov       edi,1
mov       eax,2
cmp       r15,rcx
cmove     edi,eax
M02_L57
 
cmp       qword ptr [rbp+10],0
je        short M02_L58
mov       rcx,[rbp+10]
mov       rax,[rcx]
test      rax,rax
je        short M02_L58
jmp       short M02_L59
M02_L58
 
mov       rcx,rbp
call      qword ptr [7FF9F5D16658]; System.RuntimeType.InitializeCache()
M02_L59
 
mov       [rax+90],edi
jmp       near ptr M02_L10
M02_L60
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,98
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
vmovdqa   xmmword ptr [rbp+20],xmm4
vmovdqa   xmmword ptr [rbp+30],xmm4
vmovdqa   xmmword ptr [rbp+40],xmm4
vmovdqa   xmmword ptr [rbp+50],xmm4
mov       [rbp+60],rax
mov       rax,70E91FEF45A5
mov       [rbp],rax
mov       rsi,rcx
mov       rbx,rdx
mov       edi,r8d
mov       r14d,r9d
test      edi,edi
jl        near ptr M03_L06
test      r14d,0FFFFFFFC
jne       near ptr M03_L07
M03_L00
 
cmp       edi,1
jle       near ptr M03_L08
mov       r15d,[rsi+8]
test      r15d,r15d
je        near ptr M03_L08
cmp       dword ptr [rbx+8],0
je        near ptr M03_L10
M03_L01
 
test      [rsp],esp
sub       rsp,200
lea       rcx,[rsp+30]
mov       [rbp+58],rcx
mov       dword ptr [rbp+60],80
xor       ecx,ecx
mov       [rbp+48],rcx
mov       [rbp+50],ecx
lea       rcx,[rsi+0C]
mov       [rbp+38],rcx
mov       [rbp+40],r15d
vmovdqu   xmm0,xmmword ptr [rbx]
vmovdqu   xmmword ptr [rbp+28],xmm0
lea       rcx,[rbp+38]
lea       rdx,[rbp+28]
lea       r8,[rbp+48]
call      qword ptr [7FF9F5DC71B0]; System.String.MakeSeparatorListAny(System.ReadOnlySpan`1, System.ReadOnlySpan`1, System.Collections.Generic.ValueListBuilder`1 ByRef)
mov       eax,[rbp+50]
cmp       eax,[rbp+60]
ja        near ptr M03_L11
mov       r10,[rbp+58]
test      eax,eax
je        near ptr M03_L12
test      r14d,r14d
je        near ptr M03_L05
xor       ecx,ecx
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],rcx
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       [rsp+28],r14d
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DC7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       rbx,rax
M03_L02
 
mov       rdx,[rbp+48]
test      rdx,rdx
je        short M03_L03
xor       ecx,ecx
mov       [rbp+48],rcx
mov       rcx,2027A401F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65C5168]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M03_L03
 
mov       rax,rbx
mov       rcx,70E91FEF45A5
cmp       [rbp],rcx
je        short M03_L04
call      CORINFO_HELP_FAIL_FAST
M03_L04
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L05
 
xor       r14d,r14d
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],r14
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DC7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       rbx,rax
jmp       short M03_L02
M03_L06
 
mov       ecx,1C7
mov       rdx,7FF9F5C74000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,edi
call      qword ptr [7FF9F688EFE8]
int       3
M03_L07
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F602ECB8]
int       3
M03_L08
 
mov       rcx,rsi
mov       edx,r14d
mov       r8d,edi
call      qword ptr [7FF9F5DC7150]; System.String.CreateSplitArrayOfThisAsSoleValue(System.StringSplitOptions, Int32)
mov       rcx,70E91FEF45A5
cmp       [rbp],rcx
je        short M03_L09
call      CORINFO_HELP_FAIL_FAST
M03_L09
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L10
 
cmp       r15d,edi
jge       near ptr M03_L01
and       r14d,0FFFFFFFD
jmp       near ptr M03_L01
M03_L11
 
call      qword ptr [7FF9F602E9D0]
int       3
M03_L12
 
mov       edi,1
jmp       near ptr M03_L00
 
System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,edx
mov       edi,[rbx+8]
lea       ebp,[rdi-1]
mov       r14d,ebp
xor       r15d,r15d
test      sil,1
je        short M04_L03
xor       r15d,r15d
test      edi,edi
jle       short M04_L03
M04_L00
 
mov       ecx,r15d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L01
mov       rax,[7FFA534C0728]
test      byte ptr [rax+rcx],80
je        short M04_L03
jmp       short M04_L02
M04_L01
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L03
M04_L02
 
inc       r15d
cmp       edi,r15d
jg        short M04_L00
M04_L03
 
test      sil,2
je        near ptr M04_L10
mov       r14d,ebp
cmp       r14d,r15d
jl        short M04_L10
mov       ecx,r14d
or        ecx,r15d
jl        short M04_L07
cmp       edi,r14d
jle       short M04_L07
M04_L04
 
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L05
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L06
M04_L05
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L06
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L04
jmp       short M04_L10
M04_L07
 
cmp       r14d,edi
jae       short M04_L14
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L08
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L09
M04_L08
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L09
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L07
M04_L10
 
mov       r8d,r14d
sub       r8d,r15d
inc       r8d
cmp       edi,r8d
jne       short M04_L12
mov       rax,rbx
M04_L11
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L12
 
test      r8d,r8d
je        short M04_L13
mov       rcx,rbx
mov       edx,r15d
call      qword ptr [7FFA534A34A0]; Precode of System.String.InternalSubString(Int32, Int32)
jmp       short M04_L11
M04_L13
 
mov       rax,[7FFA534C08A0]
mov       rax,[rax]
jmp       short M04_L11
M04_L14
 
call      qword ptr [7FFA53493D20]; CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.SplitWithTrimEntries()
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,48
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
xor       eax,eax
mov       [rbp-40],rax
mov       [rbp-60],rsp
mov       rbx,rcx
mov       rsi,[rbx+298]
test      rsi,rsi
je        short M00_L00
xor       ecx,ecx
cmp       dword ptr [rsi+8],0
sete      cl
test      ecx,ecx
sete      cl
movzx     ecx,cl
cmp       dword ptr [rsi+8],0
jne       short M00_L01
jmp       short M00_L01
M00_L00
 
xor       ecx,ecx
M00_L01
 
test      ecx,ecx
je        near ptr M00_L23
cmp       dword ptr [rsi+8],0
je        short M00_L05
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       short M00_L02
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L25
jmp       short M00_L03
M00_L02
 
call      qword ptr [7FF9F672E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L25
M00_L03
 
mov       ecx,[rsi+8]
dec       ecx
cmp       ecx,[rsi+8]
jae       near ptr M00_L31
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L04
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L25
jmp       short M00_L05
M00_L04
 
call      qword ptr [7FF9F672E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L25
M00_L05
 
mov       rcx,offset MT_System.StringSplitOptions
call      CORINFO_HELP_NEWSFAST
mov       dword ptr [rax+8],2
mov       rdx,rax
mov       rcx,1B690CB77D8
cmp       [rcx],ecx
call      qword ptr [7FF9F5D1A770]; System.RuntimeType.IsEnumDefined(System.Object)
test      eax,eax
je        near ptr M00_L26
mov       rcx,offset MT_System.Char[]
mov       edx,1
call      CORINFO_HELP_NEWARR_1_VC
mov       word ptr [rax+10],2E
cmp       [rsi],sil
add       rax,10
mov       rcx,rsi
mov       [rbp-50],rax
mov       dword ptr [rbp-48],1
lea       rdx,[rbp-50]
mov       r9d,2
mov       r8d,7FFFFFFF
call      qword ptr [7FF9F5DD70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
mov       rsi,rax
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyCollection`1[[System.String, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
test      rsi,rsi
je        near ptr M00_L28
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+8]
mov       r11,7FF9F5C910E0
call      qword ptr [r11]
test      eax,eax
je        near ptr M00_L29
mov       rcx,[rdi+8]
mov       r11,7FF9F5C910E8
call      qword ptr [r11]
mov       rsi,rax
M00_L06
 
mov       [rbp-58],rsi
test      rsi,rsi
je        near ptr M00_L15
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
jne       near ptr M00_L15
jmp       short M00_L09
M00_L07
 
mov       r10,rsi
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       near ptr M00_L18
mov       r13,[r10+10]
cmp       r9d,[r13+8]
jae       short M00_L10
mov       ecx,r9d
mov       r12,[r13+rcx*8+10]
M00_L08
 
mov       [rbp-40],r12
mov       r12,[rbx+18]
mov       rdx,[rbp-40]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
M00_L09
 
cmp       rdi,r14
jne       short M00_L12
mov       rax,rsi
mov       r8d,[rax+8]
inc       r8d
mov       r15d,[rax+0C]
cmp       r8d,r15d
jae       short M00_L11
mov       [rax+8],r8d
jmp       short M00_L07
M00_L10
 
call      CORINFO_HELP_RNGCHKFAIL
M00_L11
 
mov       [rax+8],r15d
jmp       near ptr M00_L21
M00_L12
 
mov       rcx,rsi
mov       r11,7FF9F5C910C8
call      qword ptr [r11]
test      eax,eax
jne       near ptr M00_L19
jmp       near ptr M00_L21
M00_L13
 
mov       r10,rsi
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       short M00_L18
mov       r13,[r10+10]
cmp       r9d,[r13+8]
jae       short M00_L10
mov       ecx,r9d
mov       r12,[r13+rcx*8+10]
M00_L14
 
mov       [rbp-40],r12
mov       r12,[rbx+18]
mov       rdx,[rbp-40]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
M00_L15
 
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
jne       short M00_L16
mov       rax,rsi
mov       r8d,[rax+8]
inc       r8d
mov       r15d,[rax+0C]
cmp       r8d,r15d
jae       short M00_L17
mov       [rax+8],r8d
jmp       short M00_L13
M00_L16
 
mov       rcx,rsi
mov       r11,7FF9F5C910C8
call      qword ptr [r11]
test      eax,eax
jne       short M00_L20
jmp       short M00_L21
M00_L17
 
mov       [rax+8],r15d
jmp       short M00_L21
M00_L18
 
mov       ecx,[r10+8]
call      qword ptr [7FF9F603EFD0]
int       3
M00_L19
 
mov       rcx,rsi
mov       r11,7FF9F5C910D0
call      qword ptr [r11]
mov       r12,rax
jmp       near ptr M00_L08
M00_L20
 
mov       rcx,rsi
mov       r11,7FF9F5C910D0
call      qword ptr [r11]
mov       r12,rax
jmp       near ptr M00_L14
M00_L21
 
cmp       rdi,r14
jne       near ptr M00_L30
M00_L22
 
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M00_L23
 
call      qword ptr [7FF9F6355368]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L24
call      qword ptr [7FF9F63550B0]
mov       rbx,rax
M00_L24
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,1B690CA8468
mov       r8,rbx
call      qword ptr [7FF9F6066670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L25
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DD73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L05
M00_L26
 
call      qword ptr [7FF9F6355170]
mov       rdi,rax
test      rdi,rdi
jne       short M00_L27
call      qword ptr [7FF9F63550C8]
mov       rdi,rax
M00_L27
 
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,1B690CA9EE0
mov       r8,rdi
call      qword ptr [7FF9F5E8D470]
mov       rcx,r14
call      CORINFO_HELP_THROW
M00_L28
 
mov       ecx,14
call      qword ptr [7FF9F603ED00]
int       3
M00_L29
 
mov       rcx,7FF9F5D15120
mov       edx,20
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,17603002000
mov       rsi,[rcx]
jmp       near ptr M00_L06
M00_L30
 
mov       rcx,rsi
mov       r11,7FF9F5C910D8
call      qword ptr [r11]
jmp       near ptr M00_L22
M00_L31
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M00_L32
mov       rsi,[rbp-58]
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
je        short M00_L32
mov       rcx,rsi
mov       r11,7FF9F5C910D8
call      qword ptr [r11]
M00_L32
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
sub       rsp,28
movzx     ecx,cx
call      qword ptr [7FFA534A7370]; Precode of System.Globalization.CharUnicodeInfo.GetCategoryCasingTableOffsetNoBoundsChecks(UInt32)
mov       rcx,[7FFA534C0750]
cmp       byte ptr [rcx+rax],0
setl      al
movzx     eax,al
add       rsp,28
ret
 
System.RuntimeType.IsEnumDefined(System.Object)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
vzeroupper
mov       rbx,rcx
mov       rsi,rdx
M02_L00
 
test      rsi,rsi
je        near ptr M02_L24
mov       rcx,[rbx+18]
mov       rax,rcx
test      cl,2
jne       short M02_L01
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M02_L02
M02_L01
 
xor       ecx,ecx
M02_L02
 
movzx     ecx,cl
test      ecx,ecx
je        near ptr M02_L26
mov       rcx,rsi
call      System.Object.GetType()
mov       rdi,rax
mov       rcx,[rdi+18]
mov       rax,rcx
test      cl,2
jne       short M02_L03
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M02_L04
M02_L03
 
xor       ecx,ecx
M02_L04
 
movzx     ecx,cl
test      ecx,ecx
je        short M02_L08
cmp       rbx,rdi
jne       near ptr M02_L25
M02_L05
 
mov       rcx,[rdi+18]
mov       rax,rcx
mov       rdx,rax
test      al,2
jne       short M02_L06
mov       rax,[rdx+10]
mov       rdx,offset MT_System.Enum
cmp       rax,rdx
sete      al
movzx     eax,al
jmp       short M02_L07
M02_L06
 
xor       eax,eax
M02_L07
 
movzx     eax,al
test      eax,eax
je        near ptr M02_L26
mov       rax,176030000A0
mov       rbp,[rax]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M02_L60
mov       ecx,eax
mov       rcx,[rbp+rcx*8+10]
mov       rdi,rcx
M02_L08
 
mov       rcx,1B690CA0020
cmp       rdi,rcx
je        near ptr M02_L27
mov       rcx,rdi
call      qword ptr [7FF9F5D26070]; System.Type.IsIntegerType(System.Type)
test      eax,eax
je        near ptr M02_L29
mov       rcx,176030000A0
mov       rbp,[rcx]
mov       rcx,[rbx+18]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M02_L60
mov       ecx,eax
mov       rbp,[rbp+rcx*8+10]
cmp       rbp,rdi
jne       near ptr M02_L30
test      rbp,rbp
je        near ptr M02_L23
mov       rcx,[rbp+10]
test      rcx,rcx
je        near ptr M02_L18
mov       rax,[rcx]
test      rax,rax
je        near ptr M02_L18
M02_L09
 
mov       edi,[rax+90]
test      edi,edi
je        near ptr M02_L40
M02_L10
 
add       edi,0FFFFFFFC
cmp       edi,5
jne       near ptr M02_L22
mov       rdx,offset MT_System.Int32
cmp       [rsi],rdx
je        short M02_L11
mov       rdx,rsi
mov       rcx,offset MT_System.Int32
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
M02_L11
 
mov       r14d,[rsi+8]
mov       rcx,[rbx+10]
test      rcx,rcx
je        near ptr M02_L19
mov       rcx,[rcx]
M02_L12
 
test      rcx,rcx
je        short M02_L15
mov       rax,[rcx+78]
M02_L13
 
test      rax,rax
je        short M02_L14
mov       rcx,offset MT_System.Enum+EnumInfo`1[[System.UInt32, System.Private.CoreLib]]
cmp       [rax],rcx
je        short M02_L17
M02_L14
 
mov       rcx,rbx
xor       edx,edx
call      qword ptr [7FF9F61F7528]; System.Enum.g__InitializeEnumInfo|7_0[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, Boolean)
jmp       short M02_L17
M02_L15
 
xor       eax,eax
jmp       short M02_L13
M02_L16
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L17
 
mov       r15,[rax+8]
cmp       byte ptr [rax+19],0
je        near ptr M02_L31
mov       eax,r14d
mov       edx,[r15+8]
cmp       rdx,rax
seta      al
movzx     eax,al
jmp       short M02_L16
M02_L18
 
mov       rcx,rbp
call      qword ptr [7FF9F5D26658]; System.RuntimeType.InitializeCache()
jmp       near ptr M02_L09
mov       rcx,offset MT_System.Char
cmp       [rsi],rcx
je        short M02_L21
jmp       short M02_L20
M02_L19
 
xor       ecx,ecx
jmp       short M02_L12
M02_L20
 
mov       rdx,rsi
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
M02_L21
 
movzx     edx,word ptr [rsi+8]
mov       rcx,rbx
call      qword ptr [7FF9F6A27F60]
jmp       short M02_L16
M02_L22
 
cmp       edi,0A
ja        near ptr M02_L36
mov       edx,edi
lea       rcx,[7FF9F692E060]
mov       ecx,[rcx+rdx*4]
lea       rax,[M02_L00]
add       rcx,rax
jmp       rcx
M02_L23
 
xor       edi,edi
jmp       near ptr M02_L10
mov       rdx,rsi
mov       rcx,offset MT_System.SByte
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A27F48]
jmp       near ptr M02_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Byte
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A27F48]
jmp       near ptr M02_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Int16
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A27F30]
jmp       near ptr M02_L16
mov       rdx,rsi
mov       rcx,offset MT_System.UInt16
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A27F30]
jmp       near ptr M02_L16
M02_L24
 
mov       ecx,2E5
mov       rdx,7FF9F5C84000
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FF9F60666E8]
int       3
M02_L25
 
mov       rcx,rdi
mov       rdx,rbx
call      System.RuntimeTypeHandle.IsEquivalentTo(System.RuntimeType, System.RuntimeType)
test      eax,eax
jne       near ptr M02_L05
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F638CD98]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbx
call      qword ptr [7FF9F638C768]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F5DDF708]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L26
 
call      qword ptr [7FF9F5D27138]
int       3
M02_L27
 
mov       rcx,rbx
call      qword ptr [7FF9F5D24918]; System.Enum.GetNamesNoCopy(System.RuntimeType)
mov       r8,rsi
mov       rcx,offset MT_System.String
cmp       [r8],rcx
je        short M02_L28
mov       rdx,rsi
call      qword ptr [7FF9F5DD43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M02_L28
 
mov       rdx,rax
mov       rcx,offset MD_System.Array.IndexOf[[System.String, System.Private.CoreLib]](System.String[], System.String)
call      qword ptr [7FF9F6897D98]
not       eax
shr       eax,1F
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L29
 
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63B5170]
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F6066718]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M02_L30
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F638CDF8]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbp
call      qword ptr [7FF9F638C768]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F5DDF708]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L31
 
test      r15,r15
jne       short M02_L32
xor       ecx,ecx
xor       r8d,r8d
jmp       short M02_L33
M02_L32
 
lea       rcx,[r15+10]
mov       r8d,[r15+8]
M02_L33
 
cmp       dword ptr [r15+8],20
jle       short M02_L34
mov       edx,r8d
mov       r8d,r14d
call      qword ptr [7FF9F6A2DCC8]
jmp       short M02_L35
M02_L34
 
mov       edx,r14d
call      qword ptr [7FF9F6A2E190]; System.SpanHelpers.NonPackedIndexOfValueType[[System.Int32, System.Private.CoreLib],[System.SpanHelpers+DontNegate`1[[System.Int32, System.Private.CoreLib]], System.Private.CoreLib]](Int32 ByRef, Int32, Int32)
M02_L35
 
not       eax
shr       eax,1F
jmp       near ptr M02_L16
mov       rdx,rsi
mov       rcx,offset MT_System.UInt32
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       edx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6897DC8]; System.Enum.IsDefinedPrimitive[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, UInt32)
jmp       near ptr M02_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Int64
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A27828]
jmp       near ptr M02_L16
mov       rdx,rsi
mov       rcx,offset MT_System.UInt64
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A27828]
jmp       near ptr M02_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Single
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovss    xmm1,dword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A27120]
jmp       near ptr M02_L16
mov       rdx,rsi
mov       rcx,offset MT_System.Double
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovsd    xmm1,qword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A27108]
jmp       near ptr M02_L16
M02_L36
 
mov       rcx,1B690CA4010
cmp       rbp,rcx
je        short M02_L38
mov       rcx,1B690CA6560
cmp       rbp,rcx
je        short M02_L37
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63B5170]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F6066718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L37
 
mov       rdx,rsi
mov       rcx,offset MT_System.UIntPtr
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A26A00]
jmp       short M02_L39
M02_L38
 
mov       rdx,rsi
mov       rcx,offset MT_System.IntPtr
call      qword ptr [7FF9F5DD4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A26A00]
M02_L39
 
movzx     eax,al
jmp       near ptr M02_L16
M02_L40
 
mov       r15,rbp
mov       rcx,r15
call      qword ptr [7FF9F5D26AA8]; System.RuntimeType.get_IsActualEnum()
test      eax,eax
je        short M02_L41
mov       rcx,rbp
call      qword ptr [7FF9F5D1A728]; System.RuntimeType.GetEnumUnderlyingType()
mov       r15,rax
test      r15,r15
je        short M02_L41
mov       rcx,offset MT_System.RuntimeType
cmp       [r15],rcx
je        short M02_L41
mov       rdx,rax
call      qword ptr [7FF9F5DD43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M02_L41
 
mov       rcx,1B690CA6498
cmp       r15,rcx
jne       short M02_L42
mov       edi,5
jmp       near ptr M02_L57
M02_L42
 
mov       rcx,1B690CA4198
cmp       r15,rcx
jne       short M02_L43
mov       edi,6
jmp       near ptr M02_L57
M02_L43
 
mov       rcx,1B690CA64C0
cmp       r15,rcx
jne       short M02_L44
mov       edi,7
jmp       near ptr M02_L57
M02_L44
 
mov       rcx,1B690CA4038
cmp       r15,rcx
jne       short M02_L45
mov       edi,8
jmp       near ptr M02_L57
M02_L45
 
mov       rcx,1B690CA4248
cmp       r15,rcx
jne       short M02_L46
mov       edi,9
jmp       near ptr M02_L57
M02_L46
 
mov       rcx,1B690CA3F48
cmp       r15,rcx
jne       short M02_L47
mov       edi,0A
jmp       near ptr M02_L57
M02_L47
 
mov       rcx,1B690CA64E8
cmp       r15,rcx
jne       short M02_L48
mov       edi,0B
jmp       near ptr M02_L57
M02_L48
 
mov       rcx,1B690CA3D90
cmp       r15,rcx
jne       short M02_L49
mov       edi,0C
jmp       near ptr M02_L57
M02_L49
 
mov       rcx,1B690CA6448
cmp       r15,rcx
jne       short M02_L50
mov       edi,3
jmp       near ptr M02_L57
M02_L50
 
mov       rcx,1B690CA6470
cmp       r15,rcx
jne       short M02_L51
mov       edi,4
jmp       near ptr M02_L57
M02_L51
 
mov       rcx,1B690CA6510
cmp       r15,rcx
jne       short M02_L52
mov       edi,0D
jmp       short M02_L57
M02_L52
 
mov       rcx,1B690CA6538
cmp       r15,rcx
jne       short M02_L53
mov       edi,0E
jmp       short M02_L57
M02_L53
 
mov       rcx,1B690CA71E0
cmp       r15,rcx
jne       short M02_L54
mov       edi,0F
jmp       short M02_L57
M02_L54
 
mov       rcx,1B690CA3C08
cmp       r15,rcx
jne       short M02_L55
mov       edi,10
jmp       short M02_L57
M02_L55
 
mov       rcx,1B690CA0020
cmp       r15,rcx
jne       short M02_L56
mov       edi,12
jmp       short M02_L57
M02_L56
 
mov       rcx,1B690CB53E0
mov       edi,1
mov       eax,2
cmp       r15,rcx
cmove     edi,eax
M02_L57
 
cmp       qword ptr [rbp+10],0
je        short M02_L58
mov       rcx,[rbp+10]
mov       rax,[rcx]
test      rax,rax
je        short M02_L58
jmp       short M02_L59
M02_L58
 
mov       rcx,rbp
call      qword ptr [7FF9F5D26658]; System.RuntimeType.InitializeCache()
M02_L59
 
mov       [rax+90],edi
jmp       near ptr M02_L10
M02_L60
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,98
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
vmovdqa   xmmword ptr [rbp+20],xmm4
vmovdqa   xmmword ptr [rbp+30],xmm4
vmovdqa   xmmword ptr [rbp+40],xmm4
vmovdqa   xmmword ptr [rbp+50],xmm4
mov       [rbp+60],rax
mov       rax,0B3CB2F9AD87F
mov       [rbp],rax
mov       rsi,rcx
mov       rbx,rdx
mov       edi,r8d
mov       r14d,r9d
test      edi,edi
jl        near ptr M03_L06
test      r14d,0FFFFFFFC
jne       near ptr M03_L07
M03_L00
 
cmp       edi,1
jle       near ptr M03_L08
mov       r15d,[rsi+8]
test      r15d,r15d
je        near ptr M03_L08
cmp       dword ptr [rbx+8],0
je        near ptr M03_L10
M03_L01
 
test      [rsp],esp
sub       rsp,200
lea       rcx,[rsp+30]
mov       [rbp+58],rcx
mov       dword ptr [rbp+60],80
xor       ecx,ecx
mov       [rbp+48],rcx
mov       [rbp+50],ecx
lea       rcx,[rsi+0C]
mov       [rbp+38],rcx
mov       [rbp+40],r15d
vmovdqu   xmm0,xmmword ptr [rbx]
vmovdqu   xmmword ptr [rbp+28],xmm0
lea       rcx,[rbp+38]
lea       rdx,[rbp+28]
lea       r8,[rbp+48]
call      qword ptr [7FF9F5DD71B0]; System.String.MakeSeparatorListAny(System.ReadOnlySpan`1, System.ReadOnlySpan`1, System.Collections.Generic.ValueListBuilder`1 ByRef)
mov       eax,[rbp+50]
cmp       eax,[rbp+60]
ja        near ptr M03_L11
mov       r10,[rbp+58]
test      eax,eax
je        near ptr M03_L12
test      r14d,r14d
je        near ptr M03_L05
xor       ecx,ecx
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],rcx
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       [rsp+28],r14d
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DD7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       rbx,rax
M03_L02
 
mov       rdx,[rbp+48]
test      rdx,rdx
je        short M03_L03
xor       ecx,ecx
mov       [rbp+48],rcx
mov       rcx,17603001F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65D4BE8]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M03_L03
 
mov       rax,rbx
mov       rcx,0B3CB2F9AD87F
cmp       [rbp],rcx
je        short M03_L04
call      CORINFO_HELP_FAIL_FAST
M03_L04
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L05
 
xor       r14d,r14d
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],r14
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DD7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       rbx,rax
jmp       short M03_L02
M03_L06
 
mov       ecx,1C7
mov       rdx,7FF9F5C84000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,edi
call      qword ptr [7FF9F689ECB8]
int       3
M03_L07
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F603ECB8]
int       3
M03_L08
 
mov       rcx,rsi
mov       edx,r14d
mov       r8d,edi
call      qword ptr [7FF9F5DD7150]; System.String.CreateSplitArrayOfThisAsSoleValue(System.StringSplitOptions, Int32)
mov       rcx,0B3CB2F9AD87F
cmp       [rbp],rcx
je        short M03_L09
call      CORINFO_HELP_FAIL_FAST
M03_L09
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L10
 
cmp       r15d,edi
jge       near ptr M03_L01
and       r14d,0FFFFFFFD
jmp       near ptr M03_L01
M03_L11
 
call      qword ptr [7FF9F603E9D0]
int       3
M03_L12
 
mov       edi,1
jmp       near ptr M03_L00
 
System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,edx
mov       edi,[rbx+8]
lea       ebp,[rdi-1]
mov       r14d,ebp
xor       r15d,r15d
test      sil,1
je        short M04_L03
xor       r15d,r15d
test      edi,edi
jle       short M04_L03
M04_L00
 
mov       ecx,r15d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L01
mov       rax,[7FFA534C0728]
test      byte ptr [rax+rcx],80
je        short M04_L03
jmp       short M04_L02
M04_L01
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L03
M04_L02
 
inc       r15d
cmp       edi,r15d
jg        short M04_L00
M04_L03
 
test      sil,2
je        near ptr M04_L10
mov       r14d,ebp
cmp       r14d,r15d
jl        short M04_L10
mov       ecx,r14d
or        ecx,r15d
jl        short M04_L07
cmp       edi,r14d
jle       short M04_L07
M04_L04
 
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L05
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L06
M04_L05
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L06
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L04
jmp       short M04_L10
M04_L07
 
cmp       r14d,edi
jae       short M04_L14
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L08
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L09
M04_L08
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L09
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L07
M04_L10
 
mov       r8d,r14d
sub       r8d,r15d
inc       r8d
cmp       edi,r8d
jne       short M04_L12
mov       rax,rbx
M04_L11
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L12
 
test      r8d,r8d
je        short M04_L13
mov       rcx,rbx
mov       edx,r15d
call      qword ptr [7FFA534A34A0]; Precode of System.String.InternalSubString(Int32, Int32)
jmp       short M04_L11
M04_L13
 
mov       rax,[7FFA534C08A0]
mov       rax,[rax]
jmp       short M04_L11
M04_L14
 
call      qword ptr [7FFA53493D20]; CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.SplitWithTrimEntries()
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,48
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
xor       eax,eax
mov       [rbp-40],rax
mov       [rbp-60],rsp
mov       rbx,rcx
mov       rsi,[rbx+298]
test      rsi,rsi
je        short M00_L00
xor       ecx,ecx
cmp       dword ptr [rsi+8],0
sete      cl
test      ecx,ecx
sete      cl
movzx     ecx,cl
cmp       dword ptr [rsi+8],0
jne       short M00_L01
jmp       short M00_L01
M00_L00
 
xor       ecx,ecx
M00_L01
 
test      ecx,ecx
je        near ptr M00_L23
cmp       dword ptr [rsi+8],0
je        short M00_L05
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       short M00_L02
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L25
jmp       short M00_L03
M00_L02
 
call      qword ptr [7FF9F673E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L25
M00_L03
 
mov       ecx,[rsi+8]
dec       ecx
cmp       ecx,[rsi+8]
jae       near ptr M00_L31
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L04
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L25
jmp       short M00_L05
M00_L04
 
call      qword ptr [7FF9F673E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L25
M00_L05
 
mov       rcx,offset MT_System.StringSplitOptions
call      CORINFO_HELP_NEWSFAST
mov       dword ptr [rax+8],2
mov       rdx,rax
mov       rcx,27DE28677F8
cmp       [rcx],ecx
call      qword ptr [7FF9F5D2A770]; System.RuntimeType.IsEnumDefined(System.Object)
test      eax,eax
je        near ptr M00_L26
mov       rcx,offset MT_System.Char[]
mov       edx,1
call      CORINFO_HELP_NEWARR_1_VC
mov       word ptr [rax+10],2E
cmp       [rsi],sil
add       rax,10
mov       rcx,rsi
mov       [rbp-50],rax
mov       dword ptr [rbp-48],1
lea       rdx,[rbp-50]
mov       r9d,2
mov       r8d,7FFFFFFF
call      qword ptr [7FF9F5DE70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
mov       rsi,rax
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyCollection`1[[System.String, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
test      rsi,rsi
je        near ptr M00_L28
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+8]
mov       r11,7FF9F5CA0FC0
call      qword ptr [r11]
test      eax,eax
je        near ptr M00_L29
mov       rcx,[rdi+8]
mov       r11,7FF9F5CA0FC8
call      qword ptr [r11]
mov       rsi,rax
M00_L06
 
mov       [rbp-58],rsi
test      rsi,rsi
je        near ptr M00_L15
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
jne       near ptr M00_L15
jmp       short M00_L09
M00_L07
 
mov       r10,rsi
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       near ptr M00_L18
mov       r13,[r10+10]
cmp       r9d,[r13+8]
jae       short M00_L10
mov       ecx,r9d
mov       r12,[r13+rcx*8+10]
M00_L08
 
mov       [rbp-40],r12
mov       r12,[rbx+18]
mov       rdx,[rbp-40]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
M00_L09
 
cmp       rdi,r14
jne       short M00_L12
mov       rax,rsi
mov       r8d,[rax+8]
inc       r8d
mov       r15d,[rax+0C]
cmp       r8d,r15d
jae       short M00_L11
mov       [rax+8],r8d
jmp       short M00_L07
M00_L10
 
call      CORINFO_HELP_RNGCHKFAIL
M00_L11
 
mov       [rax+8],r15d
jmp       near ptr M00_L21
M00_L12
 
mov       rcx,rsi
mov       r11,7FF9F5CA0FA8
call      qword ptr [r11]
test      eax,eax
jne       near ptr M00_L19
jmp       near ptr M00_L21
M00_L13
 
mov       r10,rsi
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       short M00_L18
mov       r13,[r10+10]
cmp       r9d,[r13+8]
jae       short M00_L10
mov       ecx,r9d
mov       r12,[r13+rcx*8+10]
M00_L14
 
mov       [rbp-40],r12
mov       r12,[rbx+18]
mov       rdx,[rbp-40]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
M00_L15
 
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
jne       short M00_L16
mov       rax,rsi
mov       r8d,[rax+8]
inc       r8d
mov       r15d,[rax+0C]
cmp       r8d,r15d
jae       short M00_L17
mov       [rax+8],r8d
jmp       short M00_L13
M00_L16
 
mov       rcx,rsi
mov       r11,7FF9F5CA0FA8
call      qword ptr [r11]
test      eax,eax
jne       short M00_L20
jmp       short M00_L21
M00_L17
 
mov       [rax+8],r15d
jmp       short M00_L21
M00_L18
 
mov       ecx,[r10+8]
call      qword ptr [7FF9F604EFD0]
int       3
M00_L19
 
mov       rcx,rsi
mov       r11,7FF9F5CA0FB0
call      qword ptr [r11]
mov       r12,rax
jmp       near ptr M00_L08
M00_L20
 
mov       rcx,rsi
mov       r11,7FF9F5CA0FB0
call      qword ptr [r11]
mov       r12,rax
jmp       near ptr M00_L14
M00_L21
 
cmp       rdi,r14
jne       near ptr M00_L30
M00_L22
 
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M00_L23
 
call      qword ptr [7FF9F6365368]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L24
call      qword ptr [7FF9F63650B0]
mov       rbx,rax
M00_L24
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,27DE2858468
mov       r8,rbx
call      qword ptr [7FF9F6076670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L25
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DE73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L05
M00_L26
 
call      qword ptr [7FF9F6365170]
mov       rdi,rax
test      rdi,rdi
jne       short M00_L27
call      qword ptr [7FF9F63650C8]
mov       rdi,rax
M00_L27
 
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,27DE2859EE0
mov       r8,rdi
call      qword ptr [7FF9F5E9D470]
mov       rcx,r14
call      CORINFO_HELP_THROW
M00_L28
 
mov       ecx,14
call      qword ptr [7FF9F604ED00]
int       3
M00_L29
 
mov       rcx,7FF9F5D25120
mov       edx,20
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,23D54802000
mov       rsi,[rcx]
jmp       near ptr M00_L06
M00_L30
 
mov       rcx,rsi
mov       r11,7FF9F5CA0FB8
call      qword ptr [r11]
jmp       near ptr M00_L22
M00_L31
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M00_L32
mov       rsi,[rbp-58]
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
je        short M00_L32
mov       rcx,rsi
mov       r11,7FF9F5CA0FB8
call      qword ptr [r11]
M00_L32
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
sub       rsp,28
movzx     ecx,cx
call      qword ptr [7FFA534A7370]; Precode of System.Globalization.CharUnicodeInfo.GetCategoryCasingTableOffsetNoBoundsChecks(UInt32)
mov       rcx,[7FFA534C0750]
cmp       byte ptr [rcx+rax],0
setl      al
movzx     eax,al
add       rsp,28
ret
 
System.RuntimeType.IsEnumDefined(System.Object)
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,20
vzeroupper
mov       rbx,rcx
mov       rsi,rdx
M02_L00
 
test      rsi,rsi
je        near ptr M02_L30
mov       rcx,[rbx+18]
mov       rax,rcx
test      cl,2
jne       short M02_L01
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M02_L02
M02_L01
 
xor       ecx,ecx
M02_L02
 
movzx     ecx,cl
test      ecx,ecx
je        near ptr M02_L32
mov       rcx,rsi
call      System.Object.GetType()
mov       rdi,rax
mov       rcx,[rdi+18]
mov       rax,rcx
test      cl,2
jne       short M02_L03
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M02_L04
M02_L03
 
xor       ecx,ecx
M02_L04
 
movzx     ecx,cl
test      ecx,ecx
je        short M02_L08
cmp       rbx,rdi
jne       near ptr M02_L31
M02_L05
 
mov       rcx,[rdi+18]
mov       rax,rcx
mov       rdx,rax
test      al,2
jne       short M02_L06
mov       rax,[rdx+10]
mov       rdx,offset MT_System.Enum
cmp       rax,rdx
sete      al
movzx     eax,al
jmp       short M02_L07
M02_L06
 
xor       eax,eax
M02_L07
 
movzx     eax,al
test      eax,eax
je        near ptr M02_L32
mov       rax,23D548000A0
mov       rbp,[rax]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M02_L58
mov       ecx,eax
mov       rcx,[rbp+rcx*8+10]
mov       rdi,rcx
M02_L08
 
mov       rcx,27DE2850020
cmp       rdi,rcx
je        near ptr M02_L33
mov       rcx,rdi
call      qword ptr [7FF9F5D36070]; System.Type.IsIntegerType(System.Type)
test      eax,eax
je        near ptr M02_L35
mov       rcx,23D548000A0
mov       rbp,[rcx]
mov       rcx,[rbx+18]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M02_L58
mov       ecx,eax
mov       rbp,[rbp+rcx*8+10]
cmp       rbp,rdi
jne       near ptr M02_L36
test      rbp,rbp
je        near ptr M02_L20
mov       rcx,[rbp+10]
test      rcx,rcx
je        near ptr M02_L16
mov       rax,[rcx]
test      rax,rax
je        near ptr M02_L16
M02_L09
 
mov       r14d,[rax+90]
test      r14d,r14d
je        near ptr M02_L37
M02_L10
 
add       r14d,0FFFFFFFC
cmp       r14d,5
jne       near ptr M02_L57
mov       rdx,offset MT_System.Int32
cmp       [rsi],rdx
je        short M02_L11
mov       rdx,rsi
mov       rcx,offset MT_System.Int32
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
M02_L11
 
mov       r15d,[rsi+8]
mov       rcx,[rbx+10]
test      rcx,rcx
je        short M02_L19
mov       rcx,[rcx]
M02_L12
 
test      rcx,rcx
je        short M02_L15
mov       rax,[rcx+78]
M02_L13
 
test      rax,rax
je        short M02_L14
mov       rcx,offset MT_System.Enum+EnumInfo`1[[System.UInt32, System.Private.CoreLib]]
cmp       [rax],rcx
je        short M02_L17
M02_L14
 
mov       rcx,rbx
xor       edx,edx
call      qword ptr [7FF9F6207528]; System.Enum.g__InitializeEnumInfo|7_0[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, Boolean)
jmp       short M02_L17
M02_L15
 
xor       eax,eax
jmp       short M02_L13
M02_L16
 
mov       rcx,rbp
call      qword ptr [7FF9F5D36658]; System.RuntimeType.InitializeCache()
jmp       near ptr M02_L09
M02_L17
 
mov       r13,[rax+8]
cmp       byte ptr [rax+19],0
je        near ptr M02_L21
mov       eax,r15d
mov       ecx,[r13+8]
cmp       rcx,rax
seta      al
movzx     eax,al
M02_L18
 
add       rsp,20
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
ret
M02_L19
 
xor       ecx,ecx
jmp       short M02_L12
M02_L20
 
xor       r14d,r14d
jmp       near ptr M02_L10
mov       rdx,rsi
mov       rcx,offset MT_System.SByte
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A3CD50]
jmp       short M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.Byte
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A3CD50]
jmp       short M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.Int16
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A3CD38]
jmp       short M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.UInt16
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A3CD38]
jmp       near ptr M02_L18
M02_L21
 
test      r13,r13
jne       short M02_L22
xor       ecx,ecx
xor       r8d,r8d
jmp       short M02_L23
M02_L22
 
lea       rcx,[r13+10]
mov       r8d,[r13+8]
M02_L23
 
cmp       dword ptr [r13+8],20
jle       short M02_L24
mov       edx,r8d
mov       r8d,r15d
call      qword ptr [7FF9F6A3EAC0]
jmp       short M02_L25
M02_L24
 
mov       edx,r15d
call      qword ptr [7FF9F6A3EF88]; System.SpanHelpers.NonPackedIndexOfValueType[[System.Int32, System.Private.CoreLib],[System.SpanHelpers+DontNegate`1[[System.Int32, System.Private.CoreLib]], System.Private.CoreLib]](Int32 ByRef, Int32, Int32)
M02_L25
 
not       eax
shr       eax,1F
jmp       near ptr M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.UInt32
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       edx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F68AD290]; System.Enum.IsDefinedPrimitive[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, UInt32)
jmp       near ptr M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.Int64
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A3C630]
jmp       near ptr M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.UInt64
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A3C630]
jmp       near ptr M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.Single
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovss    xmm1,dword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A37DE0]
jmp       near ptr M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.Double
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovsd    xmm1,qword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A37DC8]
jmp       near ptr M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.Char
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A3CD68]
jmp       near ptr M02_L18
M02_L26
 
mov       rcx,27DE2854010
cmp       rbp,rcx
je        short M02_L28
mov       rcx,27DE2856560
cmp       rbp,rcx
je        short M02_L27
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63C5170]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F6076718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L27
 
mov       rdx,rsi
mov       rcx,offset MT_System.UIntPtr
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A376C0]
jmp       short M02_L29
M02_L28
 
mov       rdx,rsi
mov       rcx,offset MT_System.IntPtr
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A376C0]
M02_L29
 
movzx     eax,al
jmp       near ptr M02_L18
M02_L30
 
mov       ecx,2E5
mov       rdx,7FF9F5C94000
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FF9F60766E8]
int       3
M02_L31
 
mov       rcx,rdi
mov       rdx,rbx
call      System.RuntimeTypeHandle.IsEquivalentTo(System.RuntimeType, System.RuntimeType)
test      eax,eax
jne       near ptr M02_L05
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F639CD98]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbx
call      qword ptr [7FF9F639C768]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F5DEF708]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L32
 
call      qword ptr [7FF9F5D37138]
int       3
M02_L33
 
mov       rcx,rbx
call      qword ptr [7FF9F5D34918]; System.Enum.GetNamesNoCopy(System.RuntimeType)
mov       r8,rsi
mov       rcx,offset MT_System.String
cmp       [r8],rcx
je        short M02_L34
mov       rdx,rsi
call      qword ptr [7FF9F5DE43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M02_L34
 
mov       rdx,rax
mov       rcx,offset MD_System.Array.IndexOf[[System.String, System.Private.CoreLib]](System.String[], System.String)
call      qword ptr [7FF9F68AD260]
not       eax
shr       eax,1F
add       rsp,20
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
ret
M02_L35
 
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63C5170]
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F6076718]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M02_L36
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
call      qword ptr [7FF9F639CDF8]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbp
call      qword ptr [7FF9F639C768]
mov       rdx,rax
mov       rcx,r14
call      qword ptr [7FF9F5DEF708]
mov       rcx,r14
call      CORINFO_HELP_THROW
M02_L37
 
mov       r13,rbp
mov       rcx,r13
call      qword ptr [7FF9F5D36AA8]; System.RuntimeType.get_IsActualEnum()
test      eax,eax
je        short M02_L38
mov       rcx,rbp
call      qword ptr [7FF9F5D2A728]; System.RuntimeType.GetEnumUnderlyingType()
mov       r13,rax
test      r13,r13
je        short M02_L38
mov       rcx,offset MT_System.RuntimeType
cmp       [r13],rcx
je        short M02_L38
mov       rdx,rax
call      qword ptr [7FF9F5DE43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M02_L38
 
mov       rcx,27DE2856498
cmp       r13,rcx
jne       short M02_L39
mov       r14d,5
jmp       near ptr M02_L54
M02_L39
 
mov       rcx,27DE2854198
cmp       r13,rcx
jne       short M02_L40
mov       r14d,6
jmp       near ptr M02_L54
M02_L40
 
mov       rcx,27DE28564C0
cmp       r13,rcx
jne       short M02_L41
mov       r14d,7
jmp       near ptr M02_L54
M02_L41
 
mov       rcx,27DE2854038
cmp       r13,rcx
jne       short M02_L42
mov       r14d,8
jmp       near ptr M02_L54
M02_L42
 
mov       rcx,27DE2854248
cmp       r13,rcx
jne       short M02_L43
mov       r14d,9
jmp       near ptr M02_L54
M02_L43
 
mov       rcx,27DE2853F48
cmp       r13,rcx
jne       short M02_L44
mov       r14d,0A
jmp       near ptr M02_L54
M02_L44
 
mov       rcx,27DE28564E8
cmp       r13,rcx
jne       short M02_L45
mov       r14d,0B
jmp       near ptr M02_L54
M02_L45
 
mov       rcx,27DE2853D90
cmp       r13,rcx
jne       short M02_L46
mov       r14d,0C
jmp       near ptr M02_L54
M02_L46
 
mov       rcx,27DE2856448
cmp       r13,rcx
jne       short M02_L47
mov       r14d,3
jmp       near ptr M02_L54
M02_L47
 
mov       rcx,27DE2856470
cmp       r13,rcx
jne       short M02_L48
mov       r14d,4
jmp       near ptr M02_L54
M02_L48
 
mov       rcx,27DE2856510
cmp       r13,rcx
jne       short M02_L49
mov       r14d,0D
jmp       short M02_L54
M02_L49
 
mov       rcx,27DE2856538
cmp       r13,rcx
jne       short M02_L50
mov       r14d,0E
jmp       short M02_L54
M02_L50
 
mov       rcx,27DE28571E0
cmp       r13,rcx
jne       short M02_L51
mov       r14d,0F
jmp       short M02_L54
M02_L51
 
mov       rcx,27DE2853C08
cmp       r13,rcx
jne       short M02_L52
mov       r14d,10
jmp       short M02_L54
M02_L52
 
mov       rcx,27DE2850020
cmp       r13,rcx
jne       short M02_L53
mov       r14d,12
jmp       short M02_L54
M02_L53
 
mov       rcx,27DE28653E0
mov       r14d,1
mov       eax,2
cmp       r13,rcx
cmove     r14d,eax
M02_L54
 
cmp       qword ptr [rbp+10],0
je        short M02_L55
mov       rcx,[rbp+10]
mov       rax,[rcx]
test      rax,rax
je        short M02_L55
jmp       short M02_L56
M02_L55
 
mov       rcx,rbp
call      qword ptr [7FF9F5D36658]; System.RuntimeType.InitializeCache()
M02_L56
 
mov       [rax+90],r14d
jmp       near ptr M02_L10
M02_L57
 
cmp       r14d,0A
ja        near ptr M02_L26
mov       edx,r14d
lea       rcx,[7FF9F695B7B0]
mov       ecx,[rcx+rdx*4]
lea       rax,[M02_L00]
add       rcx,rax
jmp       rcx
M02_L58
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,98
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
vmovdqa   xmmword ptr [rbp+20],xmm4
vmovdqa   xmmword ptr [rbp+30],xmm4
vmovdqa   xmmword ptr [rbp+40],xmm4
vmovdqa   xmmword ptr [rbp+50],xmm4
mov       [rbp+60],rax
mov       rax,461EA8A61D1B
mov       [rbp],rax
mov       rsi,rcx
mov       rbx,rdx
mov       edi,r8d
mov       r14d,r9d
test      edi,edi
jl        near ptr M03_L06
test      r14d,0FFFFFFFC
jne       near ptr M03_L07
M03_L00
 
cmp       edi,1
jle       near ptr M03_L08
mov       r15d,[rsi+8]
test      r15d,r15d
je        near ptr M03_L08
cmp       dword ptr [rbx+8],0
je        near ptr M03_L10
M03_L01
 
test      [rsp],esp
sub       rsp,200
lea       rcx,[rsp+30]
mov       [rbp+58],rcx
mov       dword ptr [rbp+60],80
xor       ecx,ecx
mov       [rbp+48],rcx
mov       [rbp+50],ecx
lea       rcx,[rsi+0C]
mov       [rbp+38],rcx
mov       [rbp+40],r15d
vmovdqu   xmm0,xmmword ptr [rbx]
vmovdqu   xmmword ptr [rbp+28],xmm0
lea       rcx,[rbp+38]
lea       rdx,[rbp+28]
lea       r8,[rbp+48]
call      qword ptr [7FF9F5DE71B0]; System.String.MakeSeparatorListAny(System.ReadOnlySpan`1, System.ReadOnlySpan`1, System.Collections.Generic.ValueListBuilder`1 ByRef)
mov       eax,[rbp+50]
cmp       eax,[rbp+60]
ja        near ptr M03_L11
mov       r10,[rbp+58]
test      eax,eax
je        near ptr M03_L12
test      r14d,r14d
je        near ptr M03_L05
xor       ecx,ecx
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],rcx
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       [rsp+28],r14d
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DE7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       rbx,rax
M03_L02
 
mov       rdx,[rbp+48]
test      rdx,rdx
je        short M03_L03
xor       ecx,ecx
mov       [rbp+48],rcx
mov       rcx,23D54801F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65E5240]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M03_L03
 
mov       rax,rbx
mov       rcx,461EA8A61D1B
cmp       [rbp],rcx
je        short M03_L04
call      CORINFO_HELP_FAIL_FAST
M03_L04
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L05
 
xor       r14d,r14d
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],r14
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DE7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       rbx,rax
jmp       short M03_L02
M03_L06
 
mov       ecx,1C7
mov       rdx,7FF9F5C94000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,edi
call      qword ptr [7FF9F68D43F0]
int       3
M03_L07
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F604ECB8]
int       3
M03_L08
 
mov       rcx,rsi
mov       edx,r14d
mov       r8d,edi
call      qword ptr [7FF9F5DE7150]; System.String.CreateSplitArrayOfThisAsSoleValue(System.StringSplitOptions, Int32)
mov       rcx,461EA8A61D1B
cmp       [rbp],rcx
je        short M03_L09
call      CORINFO_HELP_FAIL_FAST
M03_L09
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L10
 
cmp       r15d,edi
jge       near ptr M03_L01
and       r14d,0FFFFFFFD
jmp       near ptr M03_L01
M03_L11
 
call      qword ptr [7FF9F604E9D0]
int       3
M03_L12
 
mov       edi,1
jmp       near ptr M03_L00
 
System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,edx
mov       edi,[rbx+8]
lea       ebp,[rdi-1]
mov       r14d,ebp
xor       r15d,r15d
test      sil,1
je        short M04_L03
xor       r15d,r15d
test      edi,edi
jle       short M04_L03
M04_L00
 
mov       ecx,r15d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L01
mov       rax,[7FFA534C0728]
test      byte ptr [rax+rcx],80
je        short M04_L03
jmp       short M04_L02
M04_L01
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L03
M04_L02
 
inc       r15d
cmp       edi,r15d
jg        short M04_L00
M04_L03
 
test      sil,2
je        near ptr M04_L10
mov       r14d,ebp
cmp       r14d,r15d
jl        short M04_L10
mov       ecx,r14d
or        ecx,r15d
jl        short M04_L07
cmp       edi,r14d
jle       short M04_L07
M04_L04
 
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L05
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L06
M04_L05
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L06
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L04
jmp       short M04_L10
M04_L07
 
cmp       r14d,edi
jae       short M04_L14
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L08
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L09
M04_L08
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L09
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L07
M04_L10
 
mov       r8d,r14d
sub       r8d,r15d
inc       r8d
cmp       edi,r8d
jne       short M04_L12
mov       rax,rbx
M04_L11
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L12
 
test      r8d,r8d
je        short M04_L13
mov       rcx,rbx
mov       edx,r15d
call      qword ptr [7FFA534A34A0]; Precode of System.String.InternalSubString(Int32, Int32)
jmp       short M04_L11
M04_L13
 
mov       rax,[7FFA534C08A0]
mov       rax,[rax]
jmp       short M04_L11
M04_L14
 
call      qword ptr [7FFA53493D20]; CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.SplitWithTrimEntries()
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,48
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
xor       eax,eax
mov       [rbp-40],rax
mov       [rbp-60],rsp
mov       rbx,rcx
mov       rsi,[rbx+298]
test      rsi,rsi
je        short M00_L01
xor       ecx,ecx
cmp       dword ptr [rsi+8],0
sete      cl
test      ecx,ecx
sete      cl
movzx     ecx,cl
mov       eax,[rsi+8]
M00_L00
 
test      ecx,ecx
je        near ptr M00_L23
cmp       dword ptr [rsi+8],0
je        short M00_L05
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       short M00_L02
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L25
jmp       short M00_L03
M00_L01
 
xor       ecx,ecx
jmp       short M00_L00
M00_L02
 
call      qword ptr [7FF9F670E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L25
M00_L03
 
mov       ecx,[rsi+8]
dec       ecx
cmp       ecx,[rsi+8]
jae       near ptr M00_L31
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L04
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L25
jmp       short M00_L05
M00_L04
 
call      qword ptr [7FF9F670E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L25
M00_L05
 
mov       rcx,offset MT_System.StringSplitOptions
call      CORINFO_HELP_NEWSFAST
mov       dword ptr [rax+8],2
mov       rdx,rax
mov       rcx,29060DC77F8
cmp       [rcx],ecx
call      qword ptr [7FF9F5CFA770]; System.RuntimeType.IsEnumDefined(System.Object)
test      eax,eax
je        near ptr M00_L26
mov       rcx,offset MT_System.Char[]
mov       edx,1
call      CORINFO_HELP_NEWARR_1_VC
mov       word ptr [rax+10],2E
cmp       [rsi],sil
add       rax,10
mov       rcx,rsi
mov       [rbp-50],rax
mov       dword ptr [rbp-48],1
lea       rdx,[rbp-50]
mov       r9d,2
mov       r8d,7FFFFFFF
call      qword ptr [7FF9F5DB70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
mov       rsi,rax
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyCollection`1[[System.String, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
test      rsi,rsi
je        near ptr M00_L28
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+8]
mov       r11,7FF9F5C70FC0
call      qword ptr [r11]
test      eax,eax
je        near ptr M00_L29
mov       rcx,[rdi+8]
mov       r11,7FF9F5C70FC8
call      qword ptr [r11]
mov       rsi,rax
M00_L06
 
mov       [rbp-58],rsi
test      rsi,rsi
je        near ptr M00_L15
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
jne       near ptr M00_L15
jmp       short M00_L09
M00_L07
 
mov       r10,rsi
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       near ptr M00_L18
mov       r13,[r10+10]
cmp       r9d,[r13+8]
jae       short M00_L10
mov       ecx,r9d
mov       r12,[r13+rcx*8+10]
M00_L08
 
mov       [rbp-40],r12
mov       r12,[rbx+18]
mov       rdx,[rbp-40]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
M00_L09
 
cmp       rdi,r14
jne       short M00_L12
mov       rax,rsi
mov       r8d,[rax+8]
inc       r8d
mov       r15d,[rax+0C]
cmp       r8d,r15d
jae       short M00_L11
mov       [rax+8],r8d
jmp       short M00_L07
M00_L10
 
call      CORINFO_HELP_RNGCHKFAIL
M00_L11
 
mov       [rax+8],r15d
jmp       near ptr M00_L21
M00_L12
 
mov       rcx,rsi
mov       r11,7FF9F5C70FA8
call      qword ptr [r11]
test      eax,eax
jne       near ptr M00_L19
jmp       near ptr M00_L21
M00_L13
 
mov       r10,rsi
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       short M00_L18
mov       r13,[r10+10]
cmp       r9d,[r13+8]
jae       short M00_L10
mov       ecx,r9d
mov       r12,[r13+rcx*8+10]
M00_L14
 
mov       [rbp-40],r12
mov       r12,[rbx+18]
mov       rdx,[rbp-40]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
M00_L15
 
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
jne       short M00_L16
mov       rax,rsi
mov       r8d,[rax+8]
inc       r8d
mov       r15d,[rax+0C]
cmp       r8d,r15d
jae       short M00_L17
mov       [rax+8],r8d
jmp       short M00_L13
M00_L16
 
mov       rcx,rsi
mov       r11,7FF9F5C70FA8
call      qword ptr [r11]
test      eax,eax
jne       short M00_L20
jmp       short M00_L21
M00_L17
 
mov       [rax+8],r15d
jmp       short M00_L21
M00_L18
 
mov       ecx,[r10+8]
call      qword ptr [7FF9F601EFD0]
int       3
M00_L19
 
mov       rcx,rsi
mov       r11,7FF9F5C70FB0
call      qword ptr [r11]
mov       r12,rax
jmp       near ptr M00_L08
M00_L20
 
mov       rcx,rsi
mov       r11,7FF9F5C70FB0
call      qword ptr [r11]
mov       r12,rax
jmp       near ptr M00_L14
M00_L21
 
cmp       rdi,r14
jne       near ptr M00_L30
M00_L22
 
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M00_L23
 
call      qword ptr [7FF9F6335368]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L24
call      qword ptr [7FF9F63350B0]
mov       rbx,rax
M00_L24
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,29060DB8468
mov       r8,rbx
call      qword ptr [7FF9F6046670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L25
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DB73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L05
M00_L26
 
call      qword ptr [7FF9F6335170]
mov       rdi,rax
test      rdi,rdi
jne       short M00_L27
call      qword ptr [7FF9F63350C8]
mov       rdi,rax
M00_L27
 
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,29060DB9EE0
mov       r8,rdi
call      qword ptr [7FF9F5E6D470]
mov       rcx,r14
call      CORINFO_HELP_THROW
M00_L28
 
mov       ecx,14
call      qword ptr [7FF9F601ED00]
int       3
M00_L29
 
mov       rcx,7FF9F5CF5120
mov       edx,20
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,24FCF002000
mov       rsi,[rcx]
jmp       near ptr M00_L06
M00_L30
 
mov       rcx,rsi
mov       r11,7FF9F5C70FB8
call      qword ptr [r11]
jmp       near ptr M00_L22
M00_L31
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M00_L32
mov       rsi,[rbp-58]
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
je        short M00_L32
mov       rcx,rsi
mov       r11,7FF9F5C70FB8
call      qword ptr [r11]
M00_L32
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
sub       rsp,28
movzx     ecx,cx
call      qword ptr [7FFA534A7370]; Precode of System.Globalization.CharUnicodeInfo.GetCategoryCasingTableOffsetNoBoundsChecks(UInt32)
mov       rcx,[7FFA534C0750]
cmp       byte ptr [rcx+rax],0
setl      al
movzx     eax,al
add       rsp,28
ret
 
System.RuntimeType.IsEnumDefined(System.Object)
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,20
vzeroupper
mov       rbx,rcx
mov       rsi,rdx
M02_L00
 
test      rsi,rsi
je        near ptr M02_L53
mov       rcx,[rbx+18]
mov       rax,rcx
test      cl,2
jne       short M02_L01
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M02_L02
M02_L01
 
xor       ecx,ecx
M02_L02
 
movzx     ecx,cl
test      ecx,ecx
je        near ptr M02_L55
mov       rcx,rsi
call      System.Object.GetType()
mov       rdi,rax
mov       rcx,[rdi+18]
mov       rax,rcx
test      cl,2
jne       short M02_L03
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M02_L04
M02_L03
 
xor       ecx,ecx
M02_L04
 
movzx     ecx,cl
test      ecx,ecx
je        short M02_L08
cmp       rbx,rdi
jne       near ptr M02_L54
M02_L05
 
mov       rcx,[rdi+18]
mov       rax,rcx
mov       rdx,rax
test      al,2
jne       short M02_L06
mov       rax,[rdx+10]
mov       rdx,offset MT_System.Enum
cmp       rax,rdx
sete      al
movzx     eax,al
jmp       short M02_L07
M02_L06
 
xor       eax,eax
M02_L07
 
movzx     eax,al
test      eax,eax
je        near ptr M02_L55
mov       rax,24FCF0000A0
mov       rbp,[rax]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M02_L62
mov       ecx,eax
mov       rcx,[rbp+rcx*8+10]
mov       rdi,rcx
M02_L08
 
mov       rcx,29060DB0020
cmp       rdi,rcx
je        near ptr M02_L56
mov       rcx,rdi
call      qword ptr [7FF9F5D06070]; System.Type.IsIntegerType(System.Type)
test      eax,eax
je        near ptr M02_L58
mov       rcx,24FCF0000A0
mov       rbp,[rcx]
mov       rcx,[rbx+18]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M02_L62
mov       ecx,eax
mov       rbp,[rbp+rcx*8+10]
cmp       rbp,rdi
jne       near ptr M02_L59
test      rbp,rbp
je        near ptr M02_L24
mov       rcx,[rbp+10]
test      rcx,rcx
je        near ptr M02_L18
mov       rax,[rcx]
test      rax,rax
je        near ptr M02_L18
M02_L09
 
mov       r14d,[rax+90]
test      r14d,r14d
je        near ptr M02_L20
M02_L10
 
add       r14d,0FFFFFFFC
cmp       r14d,5
jne       near ptr M02_L60
mov       rdx,offset MT_System.Int32
cmp       [rsi],rdx
je        short M02_L11
mov       rdx,rsi
mov       rcx,offset MT_System.Int32
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
M02_L11
 
mov       r15d,[rsi+8]
mov       rcx,[rbx+10]
test      rcx,rcx
je        short M02_L19
mov       rcx,[rcx]
M02_L12
 
test      rcx,rcx
je        short M02_L15
mov       rax,[rcx+78]
M02_L13
 
test      rax,rax
je        short M02_L14
mov       rcx,offset MT_System.Enum+EnumInfo`1[[System.UInt32, System.Private.CoreLib]]
cmp       [rax],rcx
je        short M02_L16
M02_L14
 
mov       rcx,rbx
xor       edx,edx
call      qword ptr [7FF9F61D7528]; System.Enum.g__InitializeEnumInfo|7_0[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, Boolean)
jmp       short M02_L16
M02_L15
 
xor       eax,eax
jmp       short M02_L13
M02_L16
 
mov       r13,[rax+8]
cmp       byte ptr [rax+19],0
je        near ptr M02_L44
mov       eax,r15d
mov       ecx,[r13+8]
cmp       rcx,rax
seta      al
movzx     eax,al
M02_L17
 
add       rsp,20
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
ret
M02_L18
 
mov       rcx,rbp
call      qword ptr [7FF9F5D06658]; System.RuntimeType.InitializeCache()
jmp       near ptr M02_L09
M02_L19
 
xor       ecx,ecx
jmp       short M02_L12
M02_L20
 
mov       r14,rbp
mov       rcx,r14
call      qword ptr [7FF9F5D06AA8]; System.RuntimeType.get_IsActualEnum()
test      eax,eax
jne       near ptr M02_L25
M02_L21
 
mov       rcx,29060DB6498
cmp       r14,rcx
je        near ptr M02_L40
mov       rcx,29060DB4198
cmp       r14,rcx
je        near ptr M02_L28
mov       rcx,29060DB64C0
cmp       r14,rcx
je        near ptr M02_L39
mov       rcx,29060DB4038
cmp       r14,rcx
je        near ptr M02_L36
mov       rcx,29060DB4248
cmp       r14,rcx
je        near ptr M02_L27
mov       rcx,29060DB3F48
cmp       r14,rcx
je        near ptr M02_L29
mov       rcx,29060DB64E8
cmp       r14,rcx
je        near ptr M02_L35
mov       rcx,29060DB3D90
cmp       r14,rcx
je        near ptr M02_L34
mov       rcx,29060DB6448
cmp       r14,rcx
je        near ptr M02_L33
mov       rcx,29060DB6470
cmp       r14,rcx
je        near ptr M02_L43
mov       rcx,29060DB6510
cmp       r14,rcx
je        near ptr M02_L38
mov       rcx,29060DB6538
cmp       r14,rcx
je        near ptr M02_L32
mov       rcx,29060DB71E0
cmp       r14,rcx
je        near ptr M02_L42
mov       rcx,29060DB3C08
cmp       r14,rcx
je        near ptr M02_L41
mov       rcx,29060DB0020
cmp       r14,rcx
je        near ptr M02_L31
mov       rcx,29060DC53E0
mov       r15d,1
mov       eax,2
cmp       r14,rcx
cmove     r15d,eax
M02_L22
 
mov       r14d,r15d
mov       rcx,[rbp+10]
test      rcx,rcx
je        near ptr M02_L37
mov       rax,[rcx]
test      rax,rax
je        near ptr M02_L37
M02_L23
 
mov       [rax+90],r14d
jmp       near ptr M02_L10
M02_L24
 
xor       r14d,r14d
jmp       near ptr M02_L10
M02_L25
 
mov       rcx,rbp
call      qword ptr [7FF9F5CFA728]; System.RuntimeType.GetEnumUnderlyingType()
mov       r14,rax
test      r14,r14
jne       short M02_L30
M02_L26
 
jmp       near ptr M02_L21
M02_L27
 
mov       r15d,9
jmp       short M02_L22
M02_L28
 
mov       r15d,6
jmp       short M02_L22
M02_L29
 
mov       r15d,0A
jmp       short M02_L22
M02_L30
 
mov       rcx,offset MT_System.RuntimeType
cmp       [r14],rcx
jne       near ptr M02_L61
jmp       short M02_L26
M02_L31
 
mov       r15d,12
jmp       short M02_L22
M02_L32
 
mov       r15d,0E
jmp       near ptr M02_L22
M02_L33
 
mov       r15d,3
jmp       near ptr M02_L22
M02_L34
 
mov       r15d,0C
jmp       near ptr M02_L22
M02_L35
 
mov       r15d,0B
jmp       near ptr M02_L22
M02_L36
 
mov       r15d,8
jmp       near ptr M02_L22
M02_L37
 
mov       rcx,rbp
call      qword ptr [7FF9F5D06658]; System.RuntimeType.InitializeCache()
jmp       near ptr M02_L23
M02_L38
 
mov       r15d,0D
jmp       near ptr M02_L22
M02_L39
 
mov       r15d,7
jmp       near ptr M02_L22
M02_L40
 
mov       r15d,5
jmp       near ptr M02_L22
M02_L41
 
mov       r15d,10
jmp       near ptr M02_L22
M02_L42
 
mov       r15d,0F
jmp       near ptr M02_L22
M02_L43
 
mov       r15d,4
jmp       near ptr M02_L22
mov       rdx,rsi
mov       rcx,offset MT_System.SByte
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A0CD50]
jmp       near ptr M02_L17
mov       rdx,rsi
mov       rcx,offset MT_System.Byte
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A0CD50]
jmp       near ptr M02_L17
mov       rdx,rsi
mov       rcx,offset MT_System.Int16
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A0CD38]
jmp       near ptr M02_L17
mov       rdx,rsi
mov       rcx,offset MT_System.UInt16
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A0CD38]
jmp       near ptr M02_L17
M02_L44
 
test      r13,r13
jne       short M02_L45
xor       ecx,ecx
xor       r8d,r8d
jmp       short M02_L46
M02_L45
 
lea       rcx,[r13+10]
mov       r8d,[r13+8]
M02_L46
 
cmp       dword ptr [r13+8],20
jle       short M02_L47
mov       edx,r8d
mov       r8d,r15d
call      qword ptr [7FF9F6A0EAC0]
jmp       short M02_L48
M02_L47
 
mov       edx,r15d
call      qword ptr [7FF9F6A0EF88]; System.SpanHelpers.NonPackedIndexOfValueType[[System.Int32, System.Private.CoreLib],[System.SpanHelpers+DontNegate`1[[System.Int32, System.Private.CoreLib]], System.Private.CoreLib]](Int32 ByRef, Int32, Int32)
M02_L48
 
not       eax
shr       eax,1F
jmp       near ptr M02_L17
mov       rdx,rsi
mov       rcx,offset MT_System.UInt32
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       edx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F687D9B0]; System.Enum.IsDefinedPrimitive[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, UInt32)
jmp       near ptr M02_L17
mov       rdx,rsi
mov       rcx,offset MT_System.Int64
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A0C630]
jmp       near ptr M02_L17
mov       rdx,rsi
mov       rcx,offset MT_System.UInt64
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A0C630]
jmp       near ptr M02_L17
mov       rdx,rsi
mov       rcx,offset MT_System.Single
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovss    xmm1,dword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A07DE0]
jmp       near ptr M02_L17
mov       rdx,rsi
mov       rcx,offset MT_System.Double
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovsd    xmm1,qword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A07DC8]
jmp       near ptr M02_L17
mov       rdx,rsi
mov       rcx,offset MT_System.Char
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A0CD68]
jmp       near ptr M02_L17
M02_L49
 
mov       rcx,29060DB4010
cmp       rbp,rcx
je        short M02_L51
mov       rcx,29060DB6560
cmp       rbp,rcx
je        short M02_L50
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F6395170]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F6046718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L50
 
mov       rdx,rsi
mov       rcx,offset MT_System.UIntPtr
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A076C0]
jmp       short M02_L52
M02_L51
 
mov       rdx,rsi
mov       rcx,offset MT_System.IntPtr
call      qword ptr [7FF9F5DB4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A076C0]
M02_L52
 
movzx     eax,al
jmp       near ptr M02_L17
M02_L53
 
mov       ecx,2E5
mov       rdx,7FF9F5C64000
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FF9F60466E8]
int       3
M02_L54
 
mov       rcx,rdi
mov       rdx,rbx
call      System.RuntimeTypeHandle.IsEquivalentTo(System.RuntimeType, System.RuntimeType)
test      eax,eax
jne       near ptr M02_L05
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F636CD98]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbx
call      qword ptr [7FF9F636C768]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F5DBF708]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L55
 
call      qword ptr [7FF9F5D07138]
int       3
M02_L56
 
mov       rcx,rbx
call      qword ptr [7FF9F5D04918]; System.Enum.GetNamesNoCopy(System.RuntimeType)
mov       r8,rsi
mov       rcx,offset MT_System.String
cmp       [r8],rcx
je        short M02_L57
mov       rdx,rsi
call      qword ptr [7FF9F5DB43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M02_L57
 
mov       rdx,rax
mov       rcx,offset MD_System.Array.IndexOf[[System.String, System.Private.CoreLib]](System.String[], System.String)
call      qword ptr [7FF9F687D980]
not       eax
shr       eax,1F
add       rsp,20
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
ret
M02_L58
 
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F6395170]
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F6046718]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M02_L59
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       r13,rax
call      qword ptr [7FF9F636CDF8]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbp
call      qword ptr [7FF9F636C768]
mov       rdx,rax
mov       rcx,r13
call      qword ptr [7FF9F5DBF708]
mov       rcx,r13
call      CORINFO_HELP_THROW
M02_L60
 
cmp       r14d,0A
ja        near ptr M02_L49
mov       edx,r14d
lea       rcx,[7FF9F691BAB0]
mov       ecx,[rcx+rdx*4]
lea       rax,[M02_L00]
add       rcx,rax
jmp       rcx
M02_L61
 
mov       rdx,rax
call      qword ptr [7FF9F5DB43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M02_L62
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,98
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
vmovdqa   xmmword ptr [rbp+20],xmm4
vmovdqa   xmmword ptr [rbp+30],xmm4
vmovdqa   xmmword ptr [rbp+40],xmm4
vmovdqa   xmmword ptr [rbp+50],xmm4
mov       [rbp+60],rax
mov       rax,976F6BFC080B
mov       [rbp],rax
mov       rsi,rcx
mov       rbx,rdx
mov       edi,r8d
mov       r14d,r9d
test      edi,edi
jl        near ptr M03_L05
test      r14d,0FFFFFFFC
jne       near ptr M03_L06
M03_L00
 
cmp       edi,1
jle       near ptr M03_L07
mov       r15d,[rsi+8]
test      r15d,r15d
je        near ptr M03_L07
cmp       dword ptr [rbx+8],0
je        near ptr M03_L09
M03_L01
 
test      [rsp],esp
sub       rsp,200
lea       rcx,[rsp+30]
mov       [rbp+58],rcx
mov       dword ptr [rbp+60],80
xor       ecx,ecx
mov       [rbp+48],rcx
mov       [rbp+50],ecx
lea       rcx,[rsi+0C]
mov       [rbp+38],rcx
mov       [rbp+40],r15d
vmovdqu   xmm0,xmmword ptr [rbx]
vmovdqu   xmmword ptr [rbp+28],xmm0
lea       rcx,[rbp+38]
lea       rdx,[rbp+28]
lea       r8,[rbp+48]
call      qword ptr [7FF9F5DB71B0]; System.String.MakeSeparatorListAny(System.ReadOnlySpan`1, System.ReadOnlySpan`1, System.Collections.Generic.ValueListBuilder`1 ByRef)
mov       eax,[rbp+50]
cmp       eax,[rbp+60]
ja        near ptr M03_L10
mov       r10,[rbp+58]
test      eax,eax
je        near ptr M03_L11
test      r14d,r14d
je        near ptr M03_L12
xor       r15d,r15d
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],r15
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       [rsp+28],r14d
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DB7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       rdi,rax
M03_L02
 
mov       rdx,[rbp+48]
test      rdx,rdx
je        short M03_L03
xor       ecx,ecx
mov       [rbp+48],rcx
mov       rcx,24FCF001F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65B5168]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M03_L03
 
mov       rax,rdi
mov       rcx,976F6BFC080B
cmp       [rbp],rcx
je        short M03_L04
call      CORINFO_HELP_FAIL_FAST
M03_L04
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L05
 
mov       ecx,1C7
mov       rdx,7FF9F5C64000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,edi
call      qword ptr [7FF9F68A47E0]
int       3
M03_L06
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F601ECB8]
int       3
M03_L07
 
mov       rcx,rsi
mov       edx,r14d
mov       r8d,edi
call      qword ptr [7FF9F5DB7150]; System.String.CreateSplitArrayOfThisAsSoleValue(System.StringSplitOptions, Int32)
mov       rcx,976F6BFC080B
cmp       [rbp],rcx
je        short M03_L08
call      CORINFO_HELP_FAIL_FAST
M03_L08
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L09
 
cmp       r15d,edi
jge       near ptr M03_L01
and       r14d,0FFFFFFFD
jmp       near ptr M03_L01
M03_L10
 
call      qword ptr [7FF9F601E9D0]
int       3
M03_L11
 
mov       edi,1
jmp       near ptr M03_L00
M03_L12
 
xor       r15d,r15d
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],r15
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DB7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       rdi,rax
jmp       near ptr M03_L02
 
System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,edx
mov       edi,[rbx+8]
lea       ebp,[rdi-1]
mov       r14d,ebp
xor       r15d,r15d
test      sil,1
je        short M04_L03
xor       r15d,r15d
test      edi,edi
jle       short M04_L03
M04_L00
 
mov       ecx,r15d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L01
mov       rax,[7FFA534C0728]
test      byte ptr [rax+rcx],80
je        short M04_L03
jmp       short M04_L02
M04_L01
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L03
M04_L02
 
inc       r15d
cmp       edi,r15d
jg        short M04_L00
M04_L03
 
test      sil,2
je        near ptr M04_L10
mov       r14d,ebp
cmp       r14d,r15d
jl        short M04_L10
mov       ecx,r14d
or        ecx,r15d
jl        short M04_L07
cmp       edi,r14d
jle       short M04_L07
M04_L04
 
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L05
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L06
M04_L05
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L06
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L04
jmp       short M04_L10
M04_L07
 
cmp       r14d,edi
jae       short M04_L14
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L08
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L09
M04_L08
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L09
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L07
M04_L10
 
mov       r8d,r14d
sub       r8d,r15d
inc       r8d
cmp       edi,r8d
jne       short M04_L12
mov       rax,rbx
M04_L11
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L12
 
test      r8d,r8d
je        short M04_L13
mov       rcx,rbx
mov       edx,r15d
call      qword ptr [7FFA534A34A0]; Precode of System.String.InternalSubString(Int32, Int32)
jmp       short M04_L11
M04_L13
 
mov       rax,[7FFA534C08A0]
mov       rax,[rax]
jmp       short M04_L11
M04_L14
 
call      qword ptr [7FFA53493D20]; CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.SplitWithTrimEntries()
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,48
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
xor       eax,eax
mov       [rbp-40],rax
mov       [rbp-60],rsp
mov       rbx,rcx
mov       rsi,[rbx+298]
test      rsi,rsi
je        short M00_L00
xor       ecx,ecx
cmp       dword ptr [rsi+8],0
sete      cl
test      ecx,ecx
sete      cl
movzx     ecx,cl
cmp       dword ptr [rsi+8],0
jne       short M00_L01
jmp       short M00_L01
M00_L00
 
xor       ecx,ecx
M00_L01
 
test      ecx,ecx
je        near ptr M00_L23
cmp       dword ptr [rsi+8],0
je        short M00_L05
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       short M00_L02
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L25
jmp       short M00_L03
M00_L02
 
call      qword ptr [7FF9F673E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L25
M00_L03
 
mov       ecx,[rsi+8]
dec       ecx
cmp       ecx,[rsi+8]
jae       near ptr M00_L31
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L04
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L25
jmp       short M00_L05
M00_L04
 
call      qword ptr [7FF9F673E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L25
M00_L05
 
mov       rcx,offset MT_System.StringSplitOptions
call      CORINFO_HELP_NEWSFAST
mov       dword ptr [rax+8],2
mov       rdx,rax
mov       rcx,22CF0F977F8
cmp       [rcx],ecx
call      qword ptr [7FF9F5D2A770]; System.RuntimeType.IsEnumDefined(System.Object)
test      eax,eax
je        near ptr M00_L26
mov       rcx,offset MT_System.Char[]
mov       edx,1
call      CORINFO_HELP_NEWARR_1_VC
mov       word ptr [rax+10],2E
cmp       [rsi],sil
add       rax,10
mov       rcx,rsi
mov       [rbp-50],rax
mov       dword ptr [rbp-48],1
lea       rdx,[rbp-50]
mov       r9d,2
mov       r8d,7FFFFFFF
call      qword ptr [7FF9F5DE70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
mov       rsi,rax
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyCollection`1[[System.String, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
test      rsi,rsi
je        near ptr M00_L28
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+8]
mov       r11,7FF9F5CA0FC0
call      qword ptr [r11]
test      eax,eax
je        near ptr M00_L29
mov       rcx,[rdi+8]
mov       r11,7FF9F5CA0FC8
call      qword ptr [r11]
mov       rsi,rax
M00_L06
 
mov       [rbp-58],rsi
test      rsi,rsi
je        near ptr M00_L15
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
jne       near ptr M00_L15
jmp       short M00_L09
M00_L07
 
mov       r10,rsi
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       near ptr M00_L18
mov       r13,[r10+10]
cmp       r9d,[r13+8]
jae       short M00_L10
mov       ecx,r9d
mov       r12,[r13+rcx*8+10]
M00_L08
 
mov       [rbp-40],r12
mov       r12,[rbx+18]
mov       rdx,[rbp-40]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
M00_L09
 
cmp       rdi,r14
jne       short M00_L12
mov       rax,rsi
mov       r8d,[rax+8]
inc       r8d
mov       r15d,[rax+0C]
cmp       r8d,r15d
jae       short M00_L11
mov       [rax+8],r8d
jmp       short M00_L07
M00_L10
 
call      CORINFO_HELP_RNGCHKFAIL
M00_L11
 
mov       [rax+8],r15d
jmp       near ptr M00_L21
M00_L12
 
mov       rcx,rsi
mov       r11,7FF9F5CA0FA8
call      qword ptr [r11]
test      eax,eax
jne       near ptr M00_L19
jmp       near ptr M00_L21
M00_L13
 
mov       r10,rsi
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       short M00_L18
mov       r13,[r10+10]
cmp       r9d,[r13+8]
jae       short M00_L10
mov       ecx,r9d
mov       r12,[r13+rcx*8+10]
M00_L14
 
mov       [rbp-40],r12
mov       r12,[rbx+18]
mov       rdx,[rbp-40]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
M00_L15
 
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
jne       short M00_L20
mov       rax,rsi
mov       r8d,[rax+8]
inc       r8d
mov       r15d,[rax+0C]
cmp       r8d,r15d
jae       short M00_L16
mov       [rax+8],r8d
jmp       short M00_L13
M00_L16
 
mov       [rax+8],r15d
jmp       short M00_L21
M00_L17
 
mov       rcx,rsi
mov       r11,7FF9F5CA0FB0
call      qword ptr [r11]
mov       r12,rax
jmp       short M00_L14
M00_L18
 
mov       ecx,[r10+8]
call      qword ptr [7FF9F604EFD0]
int       3
M00_L19
 
mov       rcx,rsi
mov       r11,7FF9F5CA0FB0
call      qword ptr [r11]
mov       r12,rax
jmp       near ptr M00_L08
M00_L20
 
mov       rcx,rsi
mov       r11,7FF9F5CA0FA8
call      qword ptr [r11]
test      eax,eax
jne       short M00_L17
M00_L21
 
cmp       rdi,r14
jne       near ptr M00_L30
M00_L22
 
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M00_L23
 
call      qword ptr [7FF9F6365368]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L24
call      qword ptr [7FF9F63650B0]
mov       rbx,rax
M00_L24
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,22CF0F88468
mov       r8,rbx
call      qword ptr [7FF9F6076670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L25
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DE73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L05
M00_L26
 
call      qword ptr [7FF9F6365170]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L27
call      qword ptr [7FF9F63650C8]
mov       rbx,rax
M00_L27
 
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       rcx,rdi
mov       rdx,22CF0F89EE0
mov       r8,rbx
call      qword ptr [7FF9F5E9D470]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M00_L28
 
mov       ecx,14
call      qword ptr [7FF9F604ED00]
int       3
M00_L29
 
mov       rcx,7FF9F5D25120
mov       edx,20
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,1EC63002000
mov       rsi,[rcx]
jmp       near ptr M00_L06
M00_L30
 
mov       rcx,rsi
mov       r11,7FF9F5CA0FB8
call      qword ptr [r11]
jmp       near ptr M00_L22
M00_L31
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M00_L32
mov       rsi,[rbp-58]
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
je        short M00_L32
mov       rcx,rsi
mov       r11,7FF9F5CA0FB8
call      qword ptr [r11]
M00_L32
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
sub       rsp,28
movzx     ecx,cx
call      qword ptr [7FFA534A7370]; Precode of System.Globalization.CharUnicodeInfo.GetCategoryCasingTableOffsetNoBoundsChecks(UInt32)
mov       rcx,[7FFA534C0750]
cmp       byte ptr [rcx+rax],0
setl      al
movzx     eax,al
add       rsp,28
ret
 
System.RuntimeType.IsEnumDefined(System.Object)
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,20
vzeroupper
mov       rbx,rcx
mov       rsi,rdx
M02_L00
 
test      rsi,rsi
je        near ptr M02_L30
mov       rcx,[rbx+18]
mov       rax,rcx
test      cl,2
jne       short M02_L01
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M02_L02
M02_L01
 
xor       ecx,ecx
M02_L02
 
movzx     ecx,cl
test      ecx,ecx
je        near ptr M02_L32
mov       rcx,rsi
call      System.Object.GetType()
mov       rdi,rax
mov       rcx,[rdi+18]
mov       rax,rcx
test      cl,2
jne       short M02_L03
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M02_L04
M02_L03
 
xor       ecx,ecx
M02_L04
 
movzx     ecx,cl
test      ecx,ecx
je        short M02_L08
cmp       rbx,rdi
jne       near ptr M02_L31
M02_L05
 
mov       rcx,[rdi+18]
mov       rax,rcx
mov       rdx,rax
test      al,2
jne       short M02_L06
mov       rax,[rdx+10]
mov       rdx,offset MT_System.Enum
cmp       rax,rdx
sete      al
movzx     eax,al
jmp       short M02_L07
M02_L06
 
xor       eax,eax
M02_L07
 
movzx     eax,al
test      eax,eax
je        near ptr M02_L32
mov       rax,1EC630000A0
mov       rbp,[rax]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M02_L58
mov       ecx,eax
mov       rcx,[rbp+rcx*8+10]
mov       rdi,rcx
M02_L08
 
mov       rcx,22CF0F80020
cmp       rdi,rcx
je        near ptr M02_L33
mov       rcx,rdi
call      qword ptr [7FF9F5D36070]; System.Type.IsIntegerType(System.Type)
test      eax,eax
je        near ptr M02_L35
mov       rcx,1EC630000A0
mov       rbp,[rcx]
mov       rcx,[rbx+18]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M02_L58
mov       ecx,eax
mov       rbp,[rbp+rcx*8+10]
cmp       rbp,rdi
jne       near ptr M02_L36
test      rbp,rbp
je        near ptr M02_L20
mov       rcx,[rbp+10]
test      rcx,rcx
je        near ptr M02_L16
mov       rax,[rcx]
test      rax,rax
je        near ptr M02_L16
M02_L09
 
mov       r14d,[rax+90]
test      r14d,r14d
je        near ptr M02_L37
M02_L10
 
add       r14d,0FFFFFFFC
cmp       r14d,5
jne       near ptr M02_L57
mov       rdx,offset MT_System.Int32
cmp       [rsi],rdx
je        short M02_L11
mov       rdx,rsi
mov       rcx,offset MT_System.Int32
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
M02_L11
 
mov       r15d,[rsi+8]
mov       rcx,[rbx+10]
test      rcx,rcx
je        short M02_L19
mov       rcx,[rcx]
M02_L12
 
test      rcx,rcx
je        short M02_L15
mov       rax,[rcx+78]
M02_L13
 
test      rax,rax
je        short M02_L14
mov       rcx,offset MT_System.Enum+EnumInfo`1[[System.UInt32, System.Private.CoreLib]]
cmp       [rax],rcx
je        short M02_L17
M02_L14
 
mov       rcx,rbx
xor       edx,edx
call      qword ptr [7FF9F6207528]; System.Enum.g__InitializeEnumInfo|7_0[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, Boolean)
jmp       short M02_L17
M02_L15
 
xor       eax,eax
jmp       short M02_L13
M02_L16
 
mov       rcx,rbp
call      qword ptr [7FF9F5D36658]; System.RuntimeType.InitializeCache()
jmp       near ptr M02_L09
M02_L17
 
mov       r13,[rax+8]
cmp       byte ptr [rax+19],0
je        near ptr M02_L21
mov       eax,r15d
mov       ecx,[r13+8]
cmp       rcx,rax
seta      al
movzx     eax,al
M02_L18
 
add       rsp,20
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
ret
M02_L19
 
xor       ecx,ecx
jmp       short M02_L12
M02_L20
 
xor       r14d,r14d
jmp       near ptr M02_L10
mov       rdx,rsi
mov       rcx,offset MT_System.SByte
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A3CD50]
jmp       short M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.Byte
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A3CD50]
jmp       short M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.Int16
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A3CD38]
jmp       short M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.UInt16
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A3CD38]
jmp       near ptr M02_L18
M02_L21
 
test      r13,r13
jne       short M02_L22
xor       ecx,ecx
xor       r8d,r8d
jmp       short M02_L23
M02_L22
 
lea       rcx,[r13+10]
mov       r8d,[r13+8]
M02_L23
 
cmp       dword ptr [r13+8],20
jle       short M02_L24
mov       edx,r8d
mov       r8d,r15d
call      qword ptr [7FF9F6A3EAC0]
jmp       short M02_L25
M02_L24
 
mov       edx,r15d
call      qword ptr [7FF9F6A3EF88]; System.SpanHelpers.NonPackedIndexOfValueType[[System.Int32, System.Private.CoreLib],[System.SpanHelpers+DontNegate`1[[System.Int32, System.Private.CoreLib]], System.Private.CoreLib]](Int32 ByRef, Int32, Int32)
M02_L25
 
not       eax
shr       eax,1F
jmp       near ptr M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.UInt32
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       edx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F68AD9B0]; System.Enum.IsDefinedPrimitive[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, UInt32)
jmp       near ptr M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.Int64
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A3C630]
jmp       near ptr M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.UInt64
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A3C630]
jmp       near ptr M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.Single
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovss    xmm1,dword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A37DE0]
jmp       near ptr M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.Double
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovsd    xmm1,qword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A37DC8]
jmp       near ptr M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.Char
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A3CD68]
jmp       near ptr M02_L18
M02_L26
 
mov       rcx,22CF0F84010
cmp       rbp,rcx
je        short M02_L28
mov       rcx,22CF0F86560
cmp       rbp,rcx
je        short M02_L27
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63C5170]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F6076718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L27
 
mov       rdx,rsi
mov       rcx,offset MT_System.UIntPtr
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A376C0]
jmp       short M02_L29
M02_L28
 
mov       rdx,rsi
mov       rcx,offset MT_System.IntPtr
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A376C0]
M02_L29
 
movzx     eax,al
jmp       near ptr M02_L18
M02_L30
 
mov       ecx,2E5
mov       rdx,7FF9F5C94000
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FF9F60766E8]
int       3
M02_L31
 
mov       rcx,rdi
mov       rdx,rbx
call      System.RuntimeTypeHandle.IsEquivalentTo(System.RuntimeType, System.RuntimeType)
test      eax,eax
jne       near ptr M02_L05
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F639CD98]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbx
call      qword ptr [7FF9F639C768]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F5DEF708]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L32
 
call      qword ptr [7FF9F5D37138]
int       3
M02_L33
 
mov       rcx,rbx
call      qword ptr [7FF9F5D34918]; System.Enum.GetNamesNoCopy(System.RuntimeType)
mov       r8,rsi
mov       rcx,offset MT_System.String
cmp       [r8],rcx
je        short M02_L34
mov       rdx,rsi
call      qword ptr [7FF9F5DE43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M02_L34
 
mov       rdx,rax
mov       rcx,offset MD_System.Array.IndexOf[[System.String, System.Private.CoreLib]](System.String[], System.String)
call      qword ptr [7FF9F68AD980]
not       eax
shr       eax,1F
add       rsp,20
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
ret
M02_L35
 
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63C5170]
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F6076718]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M02_L36
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
call      qword ptr [7FF9F639CDF8]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbp
call      qword ptr [7FF9F639C768]
mov       rdx,rax
mov       rcx,r14
call      qword ptr [7FF9F5DEF708]
mov       rcx,r14
call      CORINFO_HELP_THROW
M02_L37
 
mov       r13,rbp
mov       rcx,r13
call      qword ptr [7FF9F5D36AA8]; System.RuntimeType.get_IsActualEnum()
test      eax,eax
je        short M02_L38
mov       rcx,rbp
call      qword ptr [7FF9F5D2A728]; System.RuntimeType.GetEnumUnderlyingType()
mov       r13,rax
test      r13,r13
je        short M02_L38
mov       rcx,offset MT_System.RuntimeType
cmp       [r13],rcx
je        short M02_L38
mov       rdx,rax
call      qword ptr [7FF9F5DE43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M02_L38
 
mov       rcx,22CF0F86498
cmp       r13,rcx
jne       short M02_L39
mov       r14d,5
jmp       near ptr M02_L54
M02_L39
 
mov       rcx,22CF0F84198
cmp       r13,rcx
jne       short M02_L40
mov       r14d,6
jmp       near ptr M02_L54
M02_L40
 
mov       rcx,22CF0F864C0
cmp       r13,rcx
jne       short M02_L41
mov       r14d,7
jmp       near ptr M02_L54
M02_L41
 
mov       rcx,22CF0F84038
cmp       r13,rcx
jne       short M02_L42
mov       r14d,8
jmp       near ptr M02_L54
M02_L42
 
mov       rcx,22CF0F84248
cmp       r13,rcx
jne       short M02_L43
mov       r14d,9
jmp       near ptr M02_L54
M02_L43
 
mov       rcx,22CF0F83F48
cmp       r13,rcx
jne       short M02_L44
mov       r14d,0A
jmp       near ptr M02_L54
M02_L44
 
mov       rcx,22CF0F864E8
cmp       r13,rcx
jne       short M02_L45
mov       r14d,0B
jmp       near ptr M02_L54
M02_L45
 
mov       rcx,22CF0F83D90
cmp       r13,rcx
jne       short M02_L46
mov       r14d,0C
jmp       near ptr M02_L54
M02_L46
 
mov       rcx,22CF0F86448
cmp       r13,rcx
jne       short M02_L47
mov       r14d,3
jmp       near ptr M02_L54
M02_L47
 
mov       rcx,22CF0F86470
cmp       r13,rcx
jne       short M02_L48
mov       r14d,4
jmp       near ptr M02_L54
M02_L48
 
mov       rcx,22CF0F86510
cmp       r13,rcx
jne       short M02_L49
mov       r14d,0D
jmp       short M02_L54
M02_L49
 
mov       rcx,22CF0F86538
cmp       r13,rcx
jne       short M02_L50
mov       r14d,0E
jmp       short M02_L54
M02_L50
 
mov       rcx,22CF0F871E0
cmp       r13,rcx
jne       short M02_L51
mov       r14d,0F
jmp       short M02_L54
M02_L51
 
mov       rcx,22CF0F83C08
cmp       r13,rcx
jne       short M02_L52
mov       r14d,10
jmp       short M02_L54
M02_L52
 
mov       rcx,22CF0F80020
cmp       r13,rcx
jne       short M02_L53
mov       r14d,12
jmp       short M02_L54
M02_L53
 
mov       rcx,22CF0F953E0
mov       r14d,1
mov       eax,2
cmp       r13,rcx
cmove     r14d,eax
M02_L54
 
cmp       qword ptr [rbp+10],0
je        short M02_L55
mov       rcx,[rbp+10]
mov       rax,[rcx]
test      rax,rax
je        short M02_L55
jmp       short M02_L56
M02_L55
 
mov       rcx,rbp
call      qword ptr [7FF9F5D36658]; System.RuntimeType.InitializeCache()
M02_L56
 
mov       [rax+90],r14d
jmp       near ptr M02_L10
M02_L57
 
cmp       r14d,0A
ja        near ptr M02_L26
mov       edx,r14d
lea       rcx,[7FF9F695B910]
mov       ecx,[rcx+rdx*4]
lea       rax,[M02_L00]
add       rcx,rax
jmp       rcx
M02_L58
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,98
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
vmovdqa   xmmword ptr [rbp+20],xmm4
vmovdqa   xmmword ptr [rbp+30],xmm4
vmovdqa   xmmword ptr [rbp+40],xmm4
vmovdqa   xmmword ptr [rbp+50],xmm4
mov       [rbp+60],rax
mov       rax,9BB8340358B
mov       [rbp],rax
mov       rsi,rcx
mov       rbx,rdx
mov       edi,r8d
mov       r14d,r9d
test      edi,edi
jl        near ptr M03_L05
test      r14d,0FFFFFFFC
jne       near ptr M03_L06
M03_L00
 
cmp       edi,1
jle       near ptr M03_L07
mov       r15d,[rsi+8]
test      r15d,r15d
je        near ptr M03_L07
cmp       dword ptr [rbx+8],0
je        near ptr M03_L09
M03_L01
 
test      [rsp],esp
sub       rsp,200
lea       rcx,[rsp+30]
mov       [rbp+58],rcx
mov       dword ptr [rbp+60],80
xor       ecx,ecx
mov       [rbp+48],rcx
mov       [rbp+50],ecx
lea       rcx,[rsi+0C]
mov       [rbp+38],rcx
mov       [rbp+40],r15d
vmovdqu   xmm0,xmmword ptr [rbx]
vmovdqu   xmmword ptr [rbp+28],xmm0
lea       rcx,[rbp+38]
lea       rdx,[rbp+28]
lea       r8,[rbp+48]
call      qword ptr [7FF9F5DE71B0]; System.String.MakeSeparatorListAny(System.ReadOnlySpan`1, System.ReadOnlySpan`1, System.Collections.Generic.ValueListBuilder`1 ByRef)
mov       eax,[rbp+50]
cmp       eax,[rbp+60]
ja        near ptr M03_L10
mov       r10,[rbp+58]
test      eax,eax
je        near ptr M03_L11
test      r14d,r14d
je        near ptr M03_L12
xor       r15d,r15d
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],r15
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       [rsp+28],r14d
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DE7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       rdi,rax
M03_L02
 
mov       rdx,[rbp+48]
test      rdx,rdx
je        short M03_L03
xor       ecx,ecx
mov       [rbp+48],rcx
mov       rcx,1EC63001F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65E5250]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M03_L03
 
mov       rax,rdi
mov       rcx,9BB8340358B
cmp       [rbp],rcx
je        short M03_L04
call      CORINFO_HELP_FAIL_FAST
M03_L04
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L05
 
mov       ecx,1C7
mov       rdx,7FF9F5C94000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,edi
call      qword ptr [7FF9F68D47E0]
int       3
M03_L06
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F604ECB8]
int       3
M03_L07
 
mov       rcx,rsi
mov       edx,r14d
mov       r8d,edi
call      qword ptr [7FF9F5DE7150]; System.String.CreateSplitArrayOfThisAsSoleValue(System.StringSplitOptions, Int32)
mov       rcx,9BB8340358B
cmp       [rbp],rcx
je        short M03_L08
call      CORINFO_HELP_FAIL_FAST
M03_L08
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L09
 
cmp       r15d,edi
jge       near ptr M03_L01
and       r14d,0FFFFFFFD
jmp       near ptr M03_L01
M03_L10
 
call      qword ptr [7FF9F604E9D0]
int       3
M03_L11
 
mov       edi,1
jmp       near ptr M03_L00
M03_L12
 
xor       r15d,r15d
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],r15
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DE7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       rdi,rax
jmp       near ptr M03_L02
 
System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,edx
mov       edi,[rbx+8]
lea       ebp,[rdi-1]
mov       r14d,ebp
xor       r15d,r15d
test      sil,1
je        short M04_L03
xor       r15d,r15d
test      edi,edi
jle       short M04_L03
M04_L00
 
mov       ecx,r15d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L01
mov       rax,[7FFA534C0728]
test      byte ptr [rax+rcx],80
je        short M04_L03
jmp       short M04_L02
M04_L01
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L03
M04_L02
 
inc       r15d
cmp       edi,r15d
jg        short M04_L00
M04_L03
 
test      sil,2
je        near ptr M04_L10
mov       r14d,ebp
cmp       r14d,r15d
jl        short M04_L10
mov       ecx,r14d
or        ecx,r15d
jl        short M04_L07
cmp       edi,r14d
jle       short M04_L07
M04_L04
 
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L05
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L06
M04_L05
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L06
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L04
jmp       short M04_L10
M04_L07
 
cmp       r14d,edi
jae       short M04_L14
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L08
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L09
M04_L08
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L09
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L07
M04_L10
 
mov       r8d,r14d
sub       r8d,r15d
inc       r8d
cmp       edi,r8d
jne       short M04_L12
mov       rax,rbx
M04_L11
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L12
 
test      r8d,r8d
je        short M04_L13
mov       rcx,rbx
mov       edx,r15d
call      qword ptr [7FFA534A34A0]; Precode of System.String.InternalSubString(Int32, Int32)
jmp       short M04_L11
M04_L13
 
mov       rax,[7FFA534C08A0]
mov       rax,[rax]
jmp       short M04_L11
M04_L14
 
call      qword ptr [7FFA53493D20]; CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.SplitWithTrimEntries()
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,48
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
xor       eax,eax
mov       [rbp-40],rax
mov       [rbp-60],rsp
mov       rbx,rcx
mov       rsi,[rbx+298]
test      rsi,rsi
je        short M00_L00
xor       ecx,ecx
cmp       dword ptr [rsi+8],0
sete      cl
test      ecx,ecx
sete      cl
movzx     ecx,cl
cmp       dword ptr [rsi+8],0
jne       short M00_L01
jmp       short M00_L01
M00_L00
 
xor       ecx,ecx
M00_L01
 
test      ecx,ecx
je        near ptr M00_L23
cmp       dword ptr [rsi+8],0
je        short M00_L05
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       short M00_L02
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L25
jmp       short M00_L03
M00_L02
 
call      qword ptr [7FF9F673E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L25
M00_L03
 
mov       ecx,[rsi+8]
dec       ecx
cmp       ecx,[rsi+8]
jae       near ptr M00_L31
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L04
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L25
jmp       short M00_L05
M00_L04
 
call      qword ptr [7FF9F673E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L25
M00_L05
 
mov       rcx,offset MT_System.StringSplitOptions
call      CORINFO_HELP_NEWSFAST
mov       dword ptr [rax+8],2
mov       rdx,rax
mov       rcx,1A32C8E77F8
cmp       [rcx],ecx
call      qword ptr [7FF9F5D2A770]; System.RuntimeType.IsEnumDefined(System.Object)
test      eax,eax
je        near ptr M00_L26
mov       rcx,offset MT_System.Char[]
mov       edx,1
call      CORINFO_HELP_NEWARR_1_VC
mov       word ptr [rax+10],2E
cmp       [rsi],sil
add       rax,10
mov       rcx,rsi
mov       [rbp-50],rax
mov       dword ptr [rbp-48],1
lea       rdx,[rbp-50]
mov       r9d,2
mov       r8d,7FFFFFFF
call      qword ptr [7FF9F5DE70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
mov       rsi,rax
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyCollection`1[[System.String, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
test      rsi,rsi
je        near ptr M00_L28
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+8]
mov       r11,7FF9F5CA0FC0
call      qword ptr [r11]
test      eax,eax
je        near ptr M00_L29
mov       rcx,[rdi+8]
mov       r11,7FF9F5CA0FC8
call      qword ptr [r11]
mov       rsi,rax
M00_L06
 
mov       [rbp-58],rsi
test      rsi,rsi
je        near ptr M00_L15
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
jne       near ptr M00_L15
jmp       short M00_L09
M00_L07
 
mov       r10,rsi
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       near ptr M00_L18
mov       r13,[r10+10]
cmp       r9d,[r13+8]
jae       short M00_L10
mov       ecx,r9d
mov       r12,[r13+rcx*8+10]
M00_L08
 
mov       [rbp-40],r12
mov       r12,[rbx+18]
mov       rdx,[rbp-40]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
M00_L09
 
cmp       rdi,r14
jne       short M00_L12
mov       rax,rsi
mov       r8d,[rax+8]
inc       r8d
mov       r15d,[rax+0C]
cmp       r8d,r15d
jae       short M00_L11
mov       [rax+8],r8d
jmp       short M00_L07
M00_L10
 
call      CORINFO_HELP_RNGCHKFAIL
M00_L11
 
mov       [rax+8],r15d
jmp       near ptr M00_L21
M00_L12
 
mov       rcx,rsi
mov       r11,7FF9F5CA0FA8
call      qword ptr [r11]
test      eax,eax
jne       near ptr M00_L19
jmp       near ptr M00_L21
M00_L13
 
mov       r10,rsi
mov       r9d,[r10+8]
cmp       r9d,[r10+0C]
jae       short M00_L18
mov       r13,[r10+10]
cmp       r9d,[r13+8]
jae       short M00_L10
mov       ecx,r9d
mov       r12,[r13+rcx*8+10]
M00_L14
 
mov       [rbp-40],r12
mov       r12,[rbx+18]
mov       rdx,[rbp-40]
lea       rcx,[r12+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [r12+8],rcx
M00_L15
 
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
jne       short M00_L20
mov       rax,rsi
mov       r8d,[rax+8]
inc       r8d
mov       r15d,[rax+0C]
cmp       r8d,r15d
jae       short M00_L16
mov       [rax+8],r8d
jmp       short M00_L13
M00_L16
 
mov       [rax+8],r15d
jmp       short M00_L21
M00_L17
 
mov       rcx,rsi
mov       r11,7FF9F5CA0FB0
call      qword ptr [r11]
mov       r12,rax
jmp       short M00_L14
M00_L18
 
mov       ecx,[r10+8]
call      qword ptr [7FF9F604EFD0]
int       3
M00_L19
 
mov       rcx,rsi
mov       r11,7FF9F5CA0FB0
call      qword ptr [r11]
mov       r12,rax
jmp       near ptr M00_L08
M00_L20
 
mov       rcx,rsi
mov       r11,7FF9F5CA0FA8
call      qword ptr [r11]
test      eax,eax
jne       short M00_L17
M00_L21
 
cmp       rdi,r14
jne       near ptr M00_L30
M00_L22
 
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M00_L23
 
call      qword ptr [7FF9F6365368]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L24
call      qword ptr [7FF9F63650B0]
mov       rbx,rax
M00_L24
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,1A32C8D8468
mov       r8,rbx
call      qword ptr [7FF9F6076670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L25
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DE73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L05
M00_L26
 
call      qword ptr [7FF9F6365170]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L27
call      qword ptr [7FF9F63650C8]
mov       rbx,rax
M00_L27
 
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       rcx,rdi
mov       rdx,1A32C8D9EE0
mov       r8,rbx
call      qword ptr [7FF9F5E9D470]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M00_L28
 
mov       ecx,14
call      qword ptr [7FF9F604ED00]
int       3
M00_L29
 
mov       rcx,7FF9F5D25120
mov       edx,20
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,1629A802000
mov       rsi,[rcx]
jmp       near ptr M00_L06
M00_L30
 
mov       rcx,rsi
mov       r11,7FF9F5CA0FB8
call      qword ptr [r11]
jmp       near ptr M00_L22
M00_L31
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M00_L32
mov       rsi,[rbp-58]
mov       rdi,[rsi]
mov       r14,offset MT_System.SZGenericArrayEnumerator`1[[System.String, System.Private.CoreLib]]
cmp       rdi,r14
je        short M00_L32
mov       rcx,rsi
mov       r11,7FF9F5CA0FB8
call      qword ptr [r11]
M00_L32
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
sub       rsp,28
movzx     ecx,cx
call      qword ptr [7FFA534A7370]; Precode of System.Globalization.CharUnicodeInfo.GetCategoryCasingTableOffsetNoBoundsChecks(UInt32)
mov       rcx,[7FFA534C0750]
cmp       byte ptr [rcx+rax],0
setl      al
movzx     eax,al
add       rsp,28
ret
 
System.RuntimeType.IsEnumDefined(System.Object)
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,20
vzeroupper
mov       rbx,rcx
mov       rsi,rdx
M02_L00
 
test      rsi,rsi
je        near ptr M02_L30
mov       rcx,[rbx+18]
mov       rax,rcx
test      cl,2
jne       short M02_L01
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M02_L02
M02_L01
 
xor       ecx,ecx
M02_L02
 
movzx     ecx,cl
test      ecx,ecx
je        near ptr M02_L32
mov       rcx,rsi
call      System.Object.GetType()
mov       rdi,rax
mov       rcx,[rdi+18]
mov       rax,rcx
test      cl,2
jne       short M02_L03
mov       rcx,[rax+10]
mov       rax,offset MT_System.Enum
cmp       rcx,rax
sete      cl
movzx     ecx,cl
jmp       short M02_L04
M02_L03
 
xor       ecx,ecx
M02_L04
 
movzx     ecx,cl
test      ecx,ecx
je        short M02_L08
cmp       rbx,rdi
jne       near ptr M02_L31
M02_L05
 
mov       rcx,[rdi+18]
mov       rax,rcx
mov       rdx,rax
test      al,2
jne       short M02_L06
mov       rax,[rdx+10]
mov       rdx,offset MT_System.Enum
cmp       rax,rdx
sete      al
movzx     eax,al
jmp       short M02_L07
M02_L06
 
xor       eax,eax
M02_L07
 
movzx     eax,al
test      eax,eax
je        near ptr M02_L32
mov       rax,1629A8000A0
mov       rbp,[rax]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M02_L58
mov       ecx,eax
mov       rcx,[rbp+rcx*8+10]
mov       rdi,rcx
M02_L08
 
mov       rcx,1A32C8D0020
cmp       rdi,rcx
je        near ptr M02_L33
mov       rcx,rdi
call      qword ptr [7FF9F5D36070]; System.Type.IsIntegerType(System.Type)
test      eax,eax
je        near ptr M02_L35
mov       rcx,1629A8000A0
mov       rbp,[rcx]
mov       rcx,[rbx+18]
call      System.Enum.InternalGetCorElementType(System.Runtime.CompilerServices.MethodTable*)
cmp       eax,1A
jae       near ptr M02_L58
mov       ecx,eax
mov       rbp,[rbp+rcx*8+10]
cmp       rbp,rdi
jne       near ptr M02_L36
test      rbp,rbp
je        near ptr M02_L20
mov       rcx,[rbp+10]
test      rcx,rcx
je        near ptr M02_L16
mov       rax,[rcx]
test      rax,rax
je        near ptr M02_L16
M02_L09
 
mov       r14d,[rax+90]
test      r14d,r14d
je        near ptr M02_L37
M02_L10
 
add       r14d,0FFFFFFFC
cmp       r14d,5
jne       near ptr M02_L57
mov       rdx,offset MT_System.Int32
cmp       [rsi],rdx
je        short M02_L11
mov       rdx,rsi
mov       rcx,offset MT_System.Int32
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
M02_L11
 
mov       r15d,[rsi+8]
mov       rcx,[rbx+10]
test      rcx,rcx
je        short M02_L19
mov       rcx,[rcx]
M02_L12
 
test      rcx,rcx
je        short M02_L15
mov       rax,[rcx+78]
M02_L13
 
test      rax,rax
je        short M02_L14
mov       rcx,offset MT_System.Enum+EnumInfo`1[[System.UInt32, System.Private.CoreLib]]
cmp       [rax],rcx
je        short M02_L17
M02_L14
 
mov       rcx,rbx
xor       edx,edx
call      qword ptr [7FF9F6207528]; System.Enum.g__InitializeEnumInfo|7_0[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, Boolean)
jmp       short M02_L17
M02_L15
 
xor       eax,eax
jmp       short M02_L13
M02_L16
 
mov       rcx,rbp
call      qword ptr [7FF9F5D36658]; System.RuntimeType.InitializeCache()
jmp       near ptr M02_L09
M02_L17
 
mov       r13,[rax+8]
cmp       byte ptr [rax+19],0
je        near ptr M02_L21
mov       eax,r15d
mov       ecx,[r13+8]
cmp       rcx,rax
seta      al
movzx     eax,al
M02_L18
 
add       rsp,20
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
ret
M02_L19
 
xor       ecx,ecx
jmp       short M02_L12
M02_L20
 
xor       r14d,r14d
jmp       near ptr M02_L10
mov       rdx,rsi
mov       rcx,offset MT_System.SByte
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A3CD50]
jmp       short M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.Byte
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,byte ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A3CD50]
jmp       short M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.Int16
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A3CD38]
jmp       short M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.UInt16
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A3CD38]
jmp       near ptr M02_L18
M02_L21
 
test      r13,r13
jne       short M02_L22
xor       ecx,ecx
xor       r8d,r8d
jmp       short M02_L23
M02_L22
 
lea       rcx,[r13+10]
mov       r8d,[r13+8]
M02_L23
 
cmp       dword ptr [r13+8],20
jle       short M02_L24
mov       edx,r8d
mov       r8d,r15d
call      qword ptr [7FF9F6A3EAC0]
jmp       short M02_L25
M02_L24
 
mov       edx,r15d
call      qword ptr [7FF9F6A3EF88]; System.SpanHelpers.NonPackedIndexOfValueType[[System.Int32, System.Private.CoreLib],[System.SpanHelpers+DontNegate`1[[System.Int32, System.Private.CoreLib]], System.Private.CoreLib]](Int32 ByRef, Int32, Int32)
M02_L25
 
not       eax
shr       eax,1F
jmp       near ptr M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.UInt32
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       edx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F68AD9B0]; System.Enum.IsDefinedPrimitive[[System.UInt32, System.Private.CoreLib]](System.RuntimeType, UInt32)
jmp       near ptr M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.Int64
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A3C630]
jmp       near ptr M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.UInt64
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A3C630]
jmp       near ptr M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.Single
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovss    xmm1,dword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A37DE0]
jmp       near ptr M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.Double
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
vmovsd    xmm1,qword ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A37DC8]
jmp       near ptr M02_L18
mov       rdx,rsi
mov       rcx,offset MT_System.Char
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
movzx     edx,word ptr [rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A3CD68]
jmp       near ptr M02_L18
M02_L26
 
mov       rcx,1A32C8D4010
cmp       rbp,rcx
je        short M02_L28
mov       rcx,1A32C8D6560
cmp       rbp,rcx
je        short M02_L27
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63C5170]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F6076718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L27
 
mov       rdx,rsi
mov       rcx,offset MT_System.UIntPtr
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A376C0]
jmp       short M02_L29
M02_L28
 
mov       rdx,rsi
mov       rcx,offset MT_System.IntPtr
call      qword ptr [7FF9F5DE4408]; System.Runtime.CompilerServices.CastHelpers.Unbox(Void*, System.Object)
mov       rdx,[rax]
mov       rcx,rbx
call      qword ptr [7FF9F6A376C0]
M02_L29
 
movzx     eax,al
jmp       near ptr M02_L18
M02_L30
 
mov       ecx,2E5
mov       rdx,7FF9F5C94000
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FF9F60766E8]
int       3
M02_L31
 
mov       rcx,rdi
mov       rdx,rbx
call      System.RuntimeTypeHandle.IsEquivalentTo(System.RuntimeType, System.RuntimeType)
test      eax,eax
jne       near ptr M02_L05
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F639CD98]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbx
call      qword ptr [7FF9F639C768]
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F5DEF708]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L32
 
call      qword ptr [7FF9F5D37138]
int       3
M02_L33
 
mov       rcx,rbx
call      qword ptr [7FF9F5D34918]; System.Enum.GetNamesNoCopy(System.RuntimeType)
mov       r8,rsi
mov       rcx,offset MT_System.String
cmp       [r8],rcx
je        short M02_L34
mov       rdx,rsi
call      qword ptr [7FF9F5DE43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M02_L34
 
mov       rdx,rax
mov       rcx,offset MD_System.Array.IndexOf[[System.String, System.Private.CoreLib]](System.String[], System.String)
call      qword ptr [7FF9F68AD980]
not       eax
shr       eax,1F
add       rsp,20
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
ret
M02_L35
 
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63C5170]
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F6076718]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M02_L36
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
call      qword ptr [7FF9F639CDF8]
mov       rcx,rax
mov       rdx,rdi
mov       r8,rbp
call      qword ptr [7FF9F639C768]
mov       rdx,rax
mov       rcx,r14
call      qword ptr [7FF9F5DEF708]
mov       rcx,r14
call      CORINFO_HELP_THROW
M02_L37
 
mov       r13,rbp
mov       rcx,r13
call      qword ptr [7FF9F5D36AA8]; System.RuntimeType.get_IsActualEnum()
test      eax,eax
je        short M02_L38
mov       rcx,rbp
call      qword ptr [7FF9F5D2A728]; System.RuntimeType.GetEnumUnderlyingType()
mov       r13,rax
test      r13,r13
je        short M02_L38
mov       rcx,offset MT_System.RuntimeType
cmp       [r13],rcx
je        short M02_L38
mov       rdx,rax
call      qword ptr [7FF9F5DE43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M02_L38
 
mov       rcx,1A32C8D6498
cmp       r13,rcx
jne       short M02_L39
mov       r14d,5
jmp       near ptr M02_L54
M02_L39
 
mov       rcx,1A32C8D4198
cmp       r13,rcx
jne       short M02_L40
mov       r14d,6
jmp       near ptr M02_L54
M02_L40
 
mov       rcx,1A32C8D64C0
cmp       r13,rcx
jne       short M02_L41
mov       r14d,7
jmp       near ptr M02_L54
M02_L41
 
mov       rcx,1A32C8D4038
cmp       r13,rcx
jne       short M02_L42
mov       r14d,8
jmp       near ptr M02_L54
M02_L42
 
mov       rcx,1A32C8D4248
cmp       r13,rcx
jne       short M02_L43
mov       r14d,9
jmp       near ptr M02_L54
M02_L43
 
mov       rcx,1A32C8D3F48
cmp       r13,rcx
jne       short M02_L44
mov       r14d,0A
jmp       near ptr M02_L54
M02_L44
 
mov       rcx,1A32C8D64E8
cmp       r13,rcx
jne       short M02_L45
mov       r14d,0B
jmp       near ptr M02_L54
M02_L45
 
mov       rcx,1A32C8D3D90
cmp       r13,rcx
jne       short M02_L46
mov       r14d,0C
jmp       near ptr M02_L54
M02_L46
 
mov       rcx,1A32C8D6448
cmp       r13,rcx
jne       short M02_L47
mov       r14d,3
jmp       near ptr M02_L54
M02_L47
 
mov       rcx,1A32C8D6470
cmp       r13,rcx
jne       short M02_L48
mov       r14d,4
jmp       near ptr M02_L54
M02_L48
 
mov       rcx,1A32C8D6510
cmp       r13,rcx
jne       short M02_L49
mov       r14d,0D
jmp       short M02_L54
M02_L49
 
mov       rcx,1A32C8D6538
cmp       r13,rcx
jne       short M02_L50
mov       r14d,0E
jmp       short M02_L54
M02_L50
 
mov       rcx,1A32C8D71E0
cmp       r13,rcx
jne       short M02_L51
mov       r14d,0F
jmp       short M02_L54
M02_L51
 
mov       rcx,1A32C8D3C08
cmp       r13,rcx
jne       short M02_L52
mov       r14d,10
jmp       short M02_L54
M02_L52
 
mov       rcx,1A32C8D0020
cmp       r13,rcx
jne       short M02_L53
mov       r14d,12
jmp       short M02_L54
M02_L53
 
mov       rcx,1A32C8E53E0
mov       r14d,1
mov       eax,2
cmp       r13,rcx
cmove     r14d,eax
M02_L54
 
cmp       qword ptr [rbp+10],0
je        short M02_L55
mov       rcx,[rbp+10]
mov       rax,[rcx]
test      rax,rax
je        short M02_L55
jmp       short M02_L56
M02_L55
 
mov       rcx,rbp
call      qword ptr [7FF9F5D36658]; System.RuntimeType.InitializeCache()
M02_L56
 
mov       [rax+90],r14d
jmp       near ptr M02_L10
M02_L57
 
cmp       r14d,0A
ja        near ptr M02_L26
mov       edx,r14d
lea       rcx,[7FF9F694C010]
mov       ecx,[rcx+rdx*4]
lea       rax,[M02_L00]
add       rcx,rax
jmp       rcx
M02_L58
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,98
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
vmovdqa   xmmword ptr [rbp+20],xmm4
vmovdqa   xmmword ptr [rbp+30],xmm4
vmovdqa   xmmword ptr [rbp+40],xmm4
vmovdqa   xmmword ptr [rbp+50],xmm4
mov       [rbp+60],rax
mov       rax,0CEA982AEB1D9
mov       [rbp],rax
mov       rsi,rcx
mov       rbx,rdx
mov       edi,r8d
mov       r14d,r9d
test      edi,edi
jl        near ptr M03_L06
test      r14d,0FFFFFFFC
jne       near ptr M03_L07
M03_L00
 
cmp       edi,1
jle       near ptr M03_L08
mov       r15d,[rsi+8]
test      r15d,r15d
je        near ptr M03_L08
cmp       dword ptr [rbx+8],0
je        near ptr M03_L10
M03_L01
 
test      [rsp],esp
sub       rsp,200
lea       rcx,[rsp+30]
mov       [rbp+58],rcx
mov       dword ptr [rbp+60],80
xor       ecx,ecx
mov       [rbp+48],rcx
mov       [rbp+50],ecx
lea       rcx,[rsi+0C]
mov       [rbp+38],rcx
mov       [rbp+40],r15d
vmovdqu   xmm0,xmmword ptr [rbx]
vmovdqu   xmmword ptr [rbp+28],xmm0
lea       rcx,[rbp+38]
lea       rdx,[rbp+28]
lea       r8,[rbp+48]
call      qword ptr [7FF9F5DE71B0]; System.String.MakeSeparatorListAny(System.ReadOnlySpan`1, System.ReadOnlySpan`1, System.Collections.Generic.ValueListBuilder`1 ByRef)
mov       eax,[rbp+50]
cmp       eax,[rbp+60]
ja        near ptr M03_L11
mov       r10,[rbp+58]
test      eax,eax
je        near ptr M03_L12
test      r14d,r14d
je        near ptr M03_L05
xor       ecx,ecx
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],rcx
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       [rsp+28],r14d
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DE7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       rbx,rax
M03_L02
 
mov       rdx,[rbp+48]
test      rdx,rdx
je        short M03_L03
xor       ecx,ecx
mov       [rbp+48],rcx
mov       rcx,1629A801F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65E51D0]; System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M03_L03
 
mov       rax,rbx
mov       rcx,0CEA982AEB1D9
cmp       [rbp],rcx
je        short M03_L04
call      CORINFO_HELP_FAIL_FAST
M03_L04
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L05
 
xor       r14d,r14d
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],r14
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DE7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       rbx,rax
jmp       short M03_L02
M03_L06
 
mov       ecx,1C7
mov       rdx,7FF9F5C94000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,edi
call      qword ptr [7FF9F68D47E0]
int       3
M03_L07
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F604ECB8]
int       3
M03_L08
 
mov       rcx,rsi
mov       edx,r14d
mov       r8d,edi
call      qword ptr [7FF9F5DE7150]; System.String.CreateSplitArrayOfThisAsSoleValue(System.StringSplitOptions, Int32)
mov       rcx,0CEA982AEB1D9
cmp       [rbp],rcx
je        short M03_L09
call      CORINFO_HELP_FAIL_FAST
M03_L09
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L10
 
cmp       r15d,edi
jge       near ptr M03_L01
and       r14d,0FFFFFFFD
jmp       near ptr M03_L01
M03_L11
 
call      qword ptr [7FF9F604E9D0]
int       3
M03_L12
 
mov       edi,1
jmp       near ptr M03_L00
 
System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,edx
mov       edi,[rbx+8]
lea       ebp,[rdi-1]
mov       r14d,ebp
xor       r15d,r15d
test      sil,1
je        short M04_L03
xor       r15d,r15d
test      edi,edi
jle       short M04_L03
M04_L00
 
mov       ecx,r15d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L01
mov       rax,[7FFA534C0728]
test      byte ptr [rax+rcx],80
je        short M04_L03
jmp       short M04_L02
M04_L01
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L03
M04_L02
 
inc       r15d
cmp       edi,r15d
jg        short M04_L00
M04_L03
 
test      sil,2
je        near ptr M04_L10
mov       r14d,ebp
cmp       r14d,r15d
jl        short M04_L10
mov       ecx,r14d
or        ecx,r15d
jl        short M04_L07
cmp       edi,r14d
jle       short M04_L07
M04_L04
 
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L05
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L06
M04_L05
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L06
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L04
jmp       short M04_L10
M04_L07
 
cmp       r14d,edi
jae       short M04_L14
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L08
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L09
M04_L08
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L09
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L07
M04_L10
 
mov       r8d,r14d
sub       r8d,r15d
inc       r8d
cmp       edi,r8d
jne       short M04_L12
mov       rax,rbx
M04_L11
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L12
 
test      r8d,r8d
je        short M04_L13
mov       rcx,rbx
mov       edx,r15d
call      qword ptr [7FFA534A34A0]; Precode of System.String.InternalSubString(Int32, Int32)
jmp       short M04_L11
M04_L13
 
mov       rax,[7FFA534C08A0]
mov       rax,[rax]
jmp       short M04_L11
M04_L14
 
call      qword ptr [7FFA53493D20]; CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.ComputeSHA256Hash()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rcx,[rbx+298]
call      qword ptr [7FF9F62BF588]; DotNetTips.Spargine.Extensions.ObjectExtensions.ComputeSha256Hash(System.Object)
mov       [rsp+28],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.ObjectExtensions.ComputeSha256Hash(System.Object)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,0B8
lea       rbp,[rsp+0F0]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-0B0],xmm4
mov       rax,0FFFFFFFFFFFFFFA0
M01_L00
 
vmovdqa   xmmword ptr [rbp+rax-40],xmm4
vmovdqa   xmmword ptr [rbp+rax-30],xmm4
vmovdqa   xmmword ptr [rbp+rax-20],xmm4
add       rax,30
jne       short M01_L00
mov       [rbp-40],rax
mov       [rbp-0C0],rsp
test      rcx,rcx
je        near ptr M01_L16
mov       rax,12DE1C009F0
mov       rbx,[rax]
mov       [rbp-40],rcx
mov       rcx,12DE1C0EF18
mov       rsi,[rcx]
cmp       byte ptr [rsi+9E],0
jne       short M01_L01
mov       rcx,rsi
call      qword ptr [7FF9F62F6A48]; System.Text.Json.JsonSerializerOptions.ConfigureForJsonSerializer()
M01_L01
 
mov       rdx,[rsi+18]
test      rdx,rdx
je        near ptr M01_L17
M01_L02
 
mov       r8,rdx
test      r8,r8
je        short M01_L03
mov       rcx,offset MT_System.Text.Json.Serialization.Metadata.JsonTypeInfo`1[[System.Object, System.Private.CoreLib]]
cmp       [r8],rcx
jne       near ptr M01_L18
M01_L03
 
lea       rdx,[rbp-40]
mov       rcx,offset MD_System.Text.Json.JsonSerializer.WriteString[[System.Object, System.Private.CoreLib]](System.Object ByRef, System.Text.Json.Serialization.Metadata.JsonTypeInfo`1)
call      qword ptr [7FF9F677D200]; System.Text.Json.JsonSerializer.WriteString[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef, System.Text.Json.Serialization.Metadata.JsonTypeInfo`1)
mov       rdi,rax
test      rdi,rdi
je        near ptr M01_L20
cmp       dword ptr [rdi+8],20
jle       near ptr M01_L19
lea       r8,[rdi+0C]
mov       [rbp-48],r8
mov       r14,[rbp-48]
mov       r15d,[rdi+8]
lea       r8,[rbp-50]
lea       r9,[rbp-58]
mov       rcx,r14
mov       edx,r15d
call      qword ptr [7FF9F60BD140]; System.Text.Unicode.Utf16Utility.GetPointerToFirstInvalidChar(Char*, Int32, Int64 ByRef, Int32 ByRef)
sub       rax,r14
mov       r9,rax
shr       r9,3F
add       r9,rax
sar       r9,1
movsxd    r13,r9d
add       r13,[rbp-50]
cmp       r13,7FFFFFFF
ja        near ptr M01_L22
cmp       r9d,r15d
jne       near ptr M01_L21
M01_L04
 
xor       edx,edx
mov       [rbp-48],rdx
movsxd    rdx,r13d
mov       rcx,offset MT_System.Byte[]
call      CORINFO_HELP_NEWARR_1_VC
mov       r14,rax
mov       [rsp+20],r14
xor       r9d,r9d
mov       [rsp+28],r9d
mov       r9d,[rdi+8]
mov       rcx,rbx
mov       rdx,rdi
xor       r8d,r8d
call      qword ptr [7FF9F602A478]; System.Text.UTF8Encoding.GetBytes(System.String, Int32, Int32, Byte[], Int32)
M01_L05
 
test      r14,r14
je        near ptr M01_L23
lea       rsi,[r14+10]
mov       ebx,[r14+8]
mov       rcx,offset MT_System.Byte[]
mov       edx,20
call      CORINFO_HELP_NEWARR_1_VC
mov       rdi,rax
lea       rdx,[rdi+10]
mov       r8d,20
cmp       r8d,20
jl        near ptr M01_L24
xor       ecx,ecx
mov       [rbp-80],rsi
mov       [rbp-78],ebx
mov       [rbp-90],rcx
xor       ecx,ecx
mov       [rbp-88],ecx
mov       [rbp-0A0],rdx
mov       [rbp-98],r8d
lea       rdx,[rbp-60]
mov       [rsp+28],rdx
lea       rdx,[rbp-0A0]
mov       [rsp+20],rdx
lea       rdx,[rbp-80]
lea       r8,[rbp-90]
mov       rcx,16E739F9358
xor       r9d,r9d
call      qword ptr [7FF9F689DA28]; System.Security.Cryptography.HashProviderDispenser+OneShotHashProvider.HashDataUsingPseudoHandle(System.String, System.ReadOnlySpan`1, System.ReadOnlySpan`1, Boolean, System.Span`1, Int32 ByRef)
add       rdi,10
mov       ebx,20
mov       rcx,12DE1C0EF20
mov       rcx,[rcx]
cmp       qword ptr [rcx+8],0
jne       near ptr M01_L25
mov       rcx,[rcx+18]
M01_L06
 
mov       rsi,rcx
mov       rcx,offset MT_Microsoft.Extensions.ObjectPool.DefaultObjectPool`1[[System.Text.StringBuilder, System.Private.CoreLib]]
cmp       [rsi],rcx
jne       near ptr M01_L28
mov       rcx,[rsi+20]
mov       [rbp-68],rcx
cmp       qword ptr [rbp-68],0
je        near ptr M01_L26
lea       rcx,[rsi+20]
mov       r8,[rbp-68]
xor       edx,edx
call      System.Threading.Interlocked.CompareExchange(System.Object ByRef, System.Object, System.Object)
cmp       rax,[rbp-68]
jne       near ptr M01_L26
M01_L07
 
mov       r12,[rbp-68]
M01_L08
 
xor       ecx,ecx
mov       [rbp-68],rcx
M01_L09
 
cmp       [r12],r12b
mov       rcx,r12
xor       edx,edx
call      qword ptr [7FF9F60DC1F8]; System.Text.StringBuilder.set_Length(Int32)
mov       [rbp-0A8],r12
xor       r14d,r14d
test      ebx,ebx
jle       near ptr M01_L15
M01_L10
 
mov       ecx,r14d
movzx     ecx,byte ptr [rdi+rcx]
mov       r8,12DE1C00428
mov       r8,[r8]
mov       rdx,16E73A077D8
call      qword ptr [7FF9F6014810]; System.Number.g__FormatUInt32Slow|43_0(UInt32, System.String, System.IFormatProvider)
test      rax,rax
je        short M01_L14
lea       rdx,[rax+0C]
mov       r8d,[rax+8]
test      r8d,r8d
je        short M01_L14
mov       rcx,[r12+8]
mov       eax,[r12+18]
lea       r15d,[rax+r8]
cmp       r15d,[rcx+8]
ja        short M01_L13
cdqe
lea       rcx,[rcx+rax*2+10]
cmp       r8d,2
jg        short M01_L11
movzx     eax,word ptr [rdx]
mov       [rcx],ax
cmp       r8d,2
jne       short M01_L12
movzx     r8d,word ptr [rdx+2]
mov       [rcx+2],r8w
jmp       short M01_L12
M01_L11
 
movsxd    r8,r8d
add       r8,r8
call      qword ptr [7FF9F5E85B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
M01_L12
 
mov       [r12+18],r15d
jmp       short M01_L14
M01_L13
 
mov       rcx,r12
call      qword ptr [7FF9F60DCA98]; System.Text.StringBuilder.AppendWithExpansion(Char ByRef, Int32)
M01_L14
 
inc       r14d
cmp       r14d,ebx
jl        near ptr M01_L10
M01_L15
 
mov       rcx,r12
call      qword ptr [7FF9F60E8140]; System.Text.StringBuilder.ToString()
mov       [rbp-0B0],rax
mov       rcx,rsp
call      M01_L29
nop
mov       rax,[rbp-0B0]
add       rsp,0B8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L16
 
call      qword ptr [7FF9F63552C0]
mov       ecx,7D9
mov       rdx,7FF9F62D3C60
call      CORINFO_HELP_STRCNS
mov       r13,rax
mov       ecx,1446
mov       rdx,7FF9F6165A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,r13
call      qword ptr [7FF9F5DD6B08]; System.String.Concat(System.String, System.String)
mov       rsi,rax
mov       ecx,1
mov       rdx,7FF9F62D3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F5DD6B08]; System.String.Concat(System.String, System.String)
mov       r12,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63550B0]
mov       r8,rax
mov       rdx,r12
mov       rcx,rdi
call      qword ptr [7FF9F6066670]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L17
 
mov       rcx,rsi
mov       byte ptr [rbp-70],1
mov       byte ptr [rbp-6F],1
xor       r9d,r9d
mov       [rsp+20],r9d
mov       [rsp+28],r9d
movzx     r9d,word ptr [rbp-70]
mov       rdx,16E739F2D10
mov       r8d,1
call      qword ptr [7FF9F62F62F8]; System.Text.Json.JsonSerializerOptions.GetTypeInfoInternal(System.Type, Boolean, System.Nullable`1, Boolean, Boolean)
mov       rdi,rax
lea       rcx,[rsi+18]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       rdx,rdi
jmp       near ptr M01_L02
M01_L18
 
call      qword ptr [7FF9F5DD43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M01_L19
 
mov       rcx,rbx
mov       rdx,rdi
call      qword ptr [7FF9F60B50C8]; System.Text.UTF8Encoding+UTF8EncodingSealed.GetBytesForSmallInput(System.String)
mov       r14,rax
jmp       near ptr M01_L05
M01_L20
 
mov       ecx,1763
mov       rdx,7FF9F5C84000
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FF9F60666E8]
int       3
M01_L21
 
mov       rcx,rbx
mov       rdx,r14
mov       r8d,r15d
call      qword ptr [7FF9F5DDC8A0]
add       r13d,eax
jns       near ptr M01_L04
M01_L22
 
call      qword ptr [7FF9F5DDC7E0]
int       3
M01_L23
 
mov       ecx,6A61
mov       rdx,7FF9F6300100
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FF9F60666E8]
int       3
M01_L24
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
call      qword ptr [7FF9F6A0E418]
mov       rsi,rax
mov       ecx,4465
mov       rdx,7FF9F6300100
call      CORINFO_HELP_STRCNS
mov       r8,rax
mov       rdx,rsi
mov       rcx,rbx
call      qword ptr [7FF9F5DDF750]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M01_L25
 
call      qword ptr [7FF9F624EE68]; System.Lazy`1[[System.__Canon, System.Private.CoreLib]].CreateValue()
mov       rcx,rax
jmp       near ptr M01_L06
M01_L26
 
mov       rcx,[rsi+18]
lea       rdx,[rbp-68]
cmp       [rcx],ecx
call      qword ptr [7FF9F65BEF88]; System.Collections.Concurrent.ConcurrentQueue`1[[System.__Canon, System.Private.CoreLib]].TryDequeue(System.__Canon ByRef)
test      eax,eax
je        short M01_L27
add       rsi,2C
lock dec  dword ptr [rsi]
jmp       near ptr M01_L07
M01_L27
 
mov       rax,[rsi+8]
mov       rcx,[rax+8]
call      qword ptr [rax+18]
mov       r12,rax
jmp       near ptr M01_L08
M01_L28
 
mov       rcx,rsi
mov       rax,[rsi]
mov       rax,[rax+40]
call      qword ptr [rax+20]
mov       r12,rax
jmp       near ptr M01_L09
M01_L29
 
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,38
mov       rbp,[rcx+30]
mov       [rsp+30],rbp
lea       rbp,[rbp+0F0]
mov       rcx,12DE1C0EF20
mov       rcx,[rcx]
cmp       qword ptr [rcx+8],0
je        short M01_L30
call      qword ptr [7FF9F624EE68]; System.Lazy`1[[System.__Canon, System.Private.CoreLib]].CreateValue()
mov       rbx,rax
jmp       short M01_L31
M01_L30
 
mov       rbx,[rcx+18]
M01_L31
 
mov       rcx,offset MT_Microsoft.Extensions.ObjectPool.DefaultObjectPool`1[[System.Text.StringBuilder, System.Private.CoreLib]]
cmp       [rbx],rcx
jne       near ptr M01_L36
mov       rdi,[rbx+10]
mov       rcx,offset Microsoft.Extensions.ObjectPool.StringBuilderPooledObjectPolicy.Return(System.Text.StringBuilder)
cmp       [rdi+18],rcx
jne       short M01_L32
mov       r12,[rbp-0A8]
mov       rcx,[r12+8]
mov       ecx,[rcx+8]
add       ecx,[r12+1C]
mov       rdx,[rdi+8]
cmp       ecx,[rdx+0C]
jg        near ptr M01_L37
mov       rcx,r12
xor       edx,edx
call      qword ptr [7FF9F60DC1F8]; System.Text.StringBuilder.set_Length(Int32)
jmp       short M01_L33
M01_L32
 
mov       rdx,[rbp-0A8]
mov       rcx,[rdi+8]
call      qword ptr [rdi+18]
test      eax,eax
mov       r12,[rbp-0A8]
je        short M01_L37
M01_L33
 
cmp       qword ptr [rbx+20],0
jne       short M01_L34
lea       rcx,[rbx+20]
mov       rdx,r12
xor       r8d,r8d
call      System.Threading.Interlocked.CompareExchange(System.Object ByRef, System.Object, System.Object)
test      rax,rax
je        short M01_L37
M01_L34
 
lea       rcx,[rbx+2C]
mov       edx,1
lock xadd [rcx],edx
inc       edx
cmp       edx,[rbx+28]
jg        short M01_L35
mov       rcx,[rbx+18]
mov       rdx,r12
cmp       [rcx],ecx
call      qword ptr [7FF9F65BEF58]; System.Collections.Concurrent.ConcurrentQueue`1[[System.__Canon, System.Private.CoreLib]].Enqueue(System.__Canon)
jmp       short M01_L37
M01_L35
 
add       rbx,2C
lock dec  dword ptr [rbx]
jmp       short M01_L37
M01_L36
 
mov       r12,[rbp-0A8]
mov       rcx,rbx
mov       rdx,r12
mov       rax,[rbx]
mov       rax,[rax+40]
call      qword ptr [rax+28]
M01_L37
 
nop
add       rsp,38
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.ComputeSHA256Hash()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rcx,[rbx+298]
call      qword ptr [7FF9F62CF588]; DotNetTips.Spargine.Extensions.ObjectExtensions.ComputeSha256Hash(System.Object)
mov       [rsp+28],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.ObjectExtensions.ComputeSha256Hash(System.Object)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,0B8
lea       rbp,[rsp+0F0]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-0B0],xmm4
mov       rax,0FFFFFFFFFFFFFFA0
M01_L00
 
vmovdqa   xmmword ptr [rbp+rax-40],xmm4
vmovdqa   xmmword ptr [rbp+rax-30],xmm4
vmovdqa   xmmword ptr [rbp+rax-20],xmm4
add       rax,30
jne       short M01_L00
mov       [rbp-40],rax
mov       [rbp-0C0],rsp
test      rcx,rcx
je        near ptr M01_L16
mov       rax,213D9C009F0
mov       rbx,[rax]
mov       [rbp-40],rcx
mov       rcx,213D9C0EF18
mov       rsi,[rcx]
cmp       byte ptr [rsi+9E],0
jne       short M01_L01
mov       rcx,rsi
call      qword ptr [7FF9F6306A48]; System.Text.Json.JsonSerializerOptions.ConfigureForJsonSerializer()
M01_L01
 
mov       rdx,[rsi+18]
test      rdx,rdx
je        near ptr M01_L17
M01_L02
 
mov       r8,rdx
test      r8,r8
je        short M01_L03
mov       rcx,offset MT_System.Text.Json.Serialization.Metadata.JsonTypeInfo`1[[System.Object, System.Private.CoreLib]]
cmp       [r8],rcx
jne       near ptr M01_L18
M01_L03
 
lea       rdx,[rbp-40]
mov       rcx,offset MD_System.Text.Json.JsonSerializer.WriteString[[System.Object, System.Private.CoreLib]](System.Object ByRef, System.Text.Json.Serialization.Metadata.JsonTypeInfo`1)
call      qword ptr [7FF9F678D200]; System.Text.Json.JsonSerializer.WriteString[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef, System.Text.Json.Serialization.Metadata.JsonTypeInfo`1)
mov       rdi,rax
test      rdi,rdi
je        near ptr M01_L20
cmp       dword ptr [rdi+8],20
jle       near ptr M01_L19
lea       r8,[rdi+0C]
mov       [rbp-48],r8
mov       r14,[rbp-48]
mov       r15d,[rdi+8]
lea       r8,[rbp-50]
lea       r9,[rbp-58]
mov       rcx,r14
mov       edx,r15d
call      qword ptr [7FF9F60CD140]; System.Text.Unicode.Utf16Utility.GetPointerToFirstInvalidChar(Char*, Int32, Int64 ByRef, Int32 ByRef)
sub       rax,r14
mov       r9,rax
shr       r9,3F
add       r9,rax
sar       r9,1
movsxd    r13,r9d
add       r13,[rbp-50]
cmp       r13,7FFFFFFF
ja        near ptr M01_L22
cmp       r9d,r15d
jne       near ptr M01_L21
M01_L04
 
xor       edx,edx
mov       [rbp-48],rdx
movsxd    rdx,r13d
mov       rcx,offset MT_System.Byte[]
call      CORINFO_HELP_NEWARR_1_VC
mov       r14,rax
mov       [rsp+20],r14
xor       r9d,r9d
mov       [rsp+28],r9d
mov       r9d,[rdi+8]
mov       rcx,rbx
mov       rdx,rdi
xor       r8d,r8d
call      qword ptr [7FF9F603A478]; System.Text.UTF8Encoding.GetBytes(System.String, Int32, Int32, Byte[], Int32)
M01_L05
 
test      r14,r14
je        near ptr M01_L23
lea       rsi,[r14+10]
mov       ebx,[r14+8]
mov       rcx,offset MT_System.Byte[]
mov       edx,20
call      CORINFO_HELP_NEWARR_1_VC
mov       rdi,rax
lea       rdx,[rdi+10]
mov       r8d,20
cmp       r8d,20
jl        near ptr M01_L24
xor       ecx,ecx
mov       [rbp-80],rsi
mov       [rbp-78],ebx
mov       [rbp-90],rcx
xor       ecx,ecx
mov       [rbp-88],ecx
mov       [rbp-0A0],rdx
mov       [rbp-98],r8d
lea       rdx,[rbp-60]
mov       [rsp+28],rdx
lea       rdx,[rbp-0A0]
mov       [rsp+20],rdx
lea       rdx,[rbp-80]
lea       r8,[rbp-90]
mov       rcx,2546B9F9358
xor       r9d,r9d
call      qword ptr [7FF9F68AD920]; System.Security.Cryptography.HashProviderDispenser+OneShotHashProvider.HashDataUsingPseudoHandle(System.String, System.ReadOnlySpan`1, System.ReadOnlySpan`1, Boolean, System.Span`1, Int32 ByRef)
add       rdi,10
mov       ebx,20
mov       rcx,213D9C0EF20
mov       rcx,[rcx]
cmp       qword ptr [rcx+8],0
jne       near ptr M01_L25
mov       rcx,[rcx+18]
M01_L06
 
mov       rsi,rcx
mov       rcx,offset MT_Microsoft.Extensions.ObjectPool.DefaultObjectPool`1[[System.Text.StringBuilder, System.Private.CoreLib]]
cmp       [rsi],rcx
jne       near ptr M01_L28
mov       rcx,[rsi+20]
mov       [rbp-68],rcx
cmp       qword ptr [rbp-68],0
je        near ptr M01_L26
lea       rcx,[rsi+20]
mov       r8,[rbp-68]
xor       edx,edx
call      System.Threading.Interlocked.CompareExchange(System.Object ByRef, System.Object, System.Object)
cmp       rax,[rbp-68]
jne       near ptr M01_L26
M01_L07
 
mov       r12,[rbp-68]
M01_L08
 
xor       ecx,ecx
mov       [rbp-68],rcx
M01_L09
 
cmp       [r12],r12b
mov       rcx,r12
xor       edx,edx
call      qword ptr [7FF9F60EC1F8]; System.Text.StringBuilder.set_Length(Int32)
mov       [rbp-0A8],r12
xor       r14d,r14d
test      ebx,ebx
jle       near ptr M01_L15
M01_L10
 
mov       ecx,r14d
movzx     ecx,byte ptr [rdi+rcx]
mov       r8,213D9C00428
mov       r8,[r8]
mov       rdx,2546BA077D8
call      qword ptr [7FF9F6024810]; System.Number.g__FormatUInt32Slow|43_0(UInt32, System.String, System.IFormatProvider)
test      rax,rax
je        short M01_L14
lea       rdx,[rax+0C]
mov       r8d,[rax+8]
test      r8d,r8d
je        short M01_L14
mov       rcx,[r12+8]
mov       eax,[r12+18]
lea       r15d,[rax+r8]
cmp       r15d,[rcx+8]
ja        short M01_L13
cdqe
lea       rcx,[rcx+rax*2+10]
cmp       r8d,2
jg        short M01_L11
movzx     eax,word ptr [rdx]
mov       [rcx],ax
cmp       r8d,2
jne       short M01_L12
movzx     r8d,word ptr [rdx+2]
mov       [rcx+2],r8w
jmp       short M01_L12
M01_L11
 
movsxd    r8,r8d
add       r8,r8
call      qword ptr [7FF9F5E95B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
M01_L12
 
mov       [r12+18],r15d
jmp       short M01_L14
M01_L13
 
mov       rcx,r12
call      qword ptr [7FF9F60ECA98]; System.Text.StringBuilder.AppendWithExpansion(Char ByRef, Int32)
M01_L14
 
inc       r14d
cmp       r14d,ebx
jl        near ptr M01_L10
M01_L15
 
mov       rcx,r12
call      qword ptr [7FF9F60F8140]; System.Text.StringBuilder.ToString()
mov       [rbp-0B0],rax
mov       rcx,rsp
call      M01_L29
nop
mov       rax,[rbp-0B0]
add       rsp,0B8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L16
 
call      qword ptr [7FF9F63652C0]
mov       ecx,7D9
mov       rdx,7FF9F62E3C60
call      CORINFO_HELP_STRCNS
mov       r13,rax
mov       ecx,1446
mov       rdx,7FF9F6175A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,r13
call      qword ptr [7FF9F5DE6B08]; System.String.Concat(System.String, System.String)
mov       rsi,rax
mov       ecx,1
mov       rdx,7FF9F62E3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F5DE6B08]; System.String.Concat(System.String, System.String)
mov       r12,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63650B0]
mov       r8,rax
mov       rdx,r12
mov       rcx,rdi
call      qword ptr [7FF9F6076670]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L17
 
mov       rcx,rsi
mov       byte ptr [rbp-70],1
mov       byte ptr [rbp-6F],1
xor       r9d,r9d
mov       [rsp+20],r9d
mov       [rsp+28],r9d
movzx     r9d,word ptr [rbp-70]
mov       rdx,2546B9F2D10
mov       r8d,1
call      qword ptr [7FF9F63062F8]; System.Text.Json.JsonSerializerOptions.GetTypeInfoInternal(System.Type, Boolean, System.Nullable`1, Boolean, Boolean)
mov       rdi,rax
lea       rcx,[rsi+18]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       rdx,rdi
jmp       near ptr M01_L02
M01_L18
 
call      qword ptr [7FF9F5DE43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M01_L19
 
mov       rcx,rbx
mov       rdx,rdi
call      qword ptr [7FF9F60C50C8]; System.Text.UTF8Encoding+UTF8EncodingSealed.GetBytesForSmallInput(System.String)
mov       r14,rax
jmp       near ptr M01_L05
M01_L20
 
mov       ecx,1763
mov       rdx,7FF9F5C94000
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FF9F60766E8]
int       3
M01_L21
 
mov       rcx,rbx
mov       rdx,r14
mov       r8d,r15d
call      qword ptr [7FF9F5DEC8A0]
add       r13d,eax
jns       near ptr M01_L04
M01_L22
 
call      qword ptr [7FF9F5DEC7E0]
int       3
M01_L23
 
mov       ecx,6A61
mov       rdx,7FF9F6310100
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FF9F60766E8]
int       3
M01_L24
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
call      qword ptr [7FF9F6A74AE0]
mov       rsi,rax
mov       ecx,4465
mov       rdx,7FF9F6310100
call      CORINFO_HELP_STRCNS
mov       r8,rax
mov       rdx,rsi
mov       rcx,rbx
call      qword ptr [7FF9F5DEF750]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M01_L25
 
call      qword ptr [7FF9F625EE68]; System.Lazy`1[[System.__Canon, System.Private.CoreLib]].CreateValue()
mov       rcx,rax
jmp       near ptr M01_L06
M01_L26
 
mov       rcx,[rsi+18]
lea       rdx,[rbp-68]
cmp       [rcx],ecx
call      qword ptr [7FF9F65CEF88]; System.Collections.Concurrent.ConcurrentQueue`1[[System.__Canon, System.Private.CoreLib]].TryDequeue(System.__Canon ByRef)
test      eax,eax
je        short M01_L27
add       rsi,2C
lock dec  dword ptr [rsi]
jmp       near ptr M01_L07
M01_L27
 
mov       rax,[rsi+8]
mov       rcx,[rax+8]
call      qword ptr [rax+18]
mov       r12,rax
jmp       near ptr M01_L08
M01_L28
 
mov       rcx,rsi
mov       rax,[rsi]
mov       rax,[rax+40]
call      qword ptr [rax+20]
mov       r12,rax
jmp       near ptr M01_L09
M01_L29
 
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,38
mov       rbp,[rcx+30]
mov       [rsp+30],rbp
lea       rbp,[rbp+0F0]
mov       rcx,213D9C0EF20
mov       rcx,[rcx]
cmp       qword ptr [rcx+8],0
je        short M01_L30
call      qword ptr [7FF9F625EE68]; System.Lazy`1[[System.__Canon, System.Private.CoreLib]].CreateValue()
mov       rbx,rax
jmp       short M01_L31
M01_L30
 
mov       rbx,[rcx+18]
M01_L31
 
mov       rcx,offset MT_Microsoft.Extensions.ObjectPool.DefaultObjectPool`1[[System.Text.StringBuilder, System.Private.CoreLib]]
cmp       [rbx],rcx
jne       near ptr M01_L36
mov       rdi,[rbx+10]
mov       rcx,offset Microsoft.Extensions.ObjectPool.StringBuilderPooledObjectPolicy.Return(System.Text.StringBuilder)
cmp       [rdi+18],rcx
jne       short M01_L32
mov       r12,[rbp-0A8]
mov       rcx,[r12+8]
mov       ecx,[rcx+8]
add       ecx,[r12+1C]
mov       rdx,[rdi+8]
cmp       ecx,[rdx+0C]
jg        near ptr M01_L37
mov       rcx,r12
xor       edx,edx
call      qword ptr [7FF9F60EC1F8]; System.Text.StringBuilder.set_Length(Int32)
jmp       short M01_L33
M01_L32
 
mov       rdx,[rbp-0A8]
mov       rcx,[rdi+8]
call      qword ptr [rdi+18]
test      eax,eax
mov       r12,[rbp-0A8]
je        short M01_L37
M01_L33
 
cmp       qword ptr [rbx+20],0
jne       short M01_L34
lea       rcx,[rbx+20]
mov       rdx,r12
xor       r8d,r8d
call      System.Threading.Interlocked.CompareExchange(System.Object ByRef, System.Object, System.Object)
test      rax,rax
je        short M01_L37
M01_L34
 
lea       rcx,[rbx+2C]
mov       edx,1
lock xadd [rcx],edx
inc       edx
cmp       edx,[rbx+28]
jg        short M01_L35
mov       rcx,[rbx+18]
mov       rdx,r12
cmp       [rcx],ecx
call      qword ptr [7FF9F65CEF58]; System.Collections.Concurrent.ConcurrentQueue`1[[System.__Canon, System.Private.CoreLib]].Enqueue(System.__Canon)
jmp       short M01_L37
M01_L35
 
add       rbx,2C
lock dec  dword ptr [rbx]
jmp       short M01_L37
M01_L36
 
mov       r12,[rbp-0A8]
mov       rcx,rbx
mov       rdx,r12
mov       rax,[rbx]
mov       rax,[rax+40]
call      qword ptr [rax+28]
M01_L37
 
nop
add       rsp,38
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.ComputeSHA256Hash()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rcx,[rbx+298]
call      qword ptr [7FF9F62CF588]; DotNetTips.Spargine.Extensions.ObjectExtensions.ComputeSha256Hash(System.Object)
mov       [rsp+28],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.ObjectExtensions.ComputeSha256Hash(System.Object)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,0B8
lea       rbp,[rsp+0F0]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-0B0],xmm4
mov       rax,0FFFFFFFFFFFFFFA0
M01_L00
 
vmovdqa   xmmword ptr [rbp+rax-40],xmm4
vmovdqa   xmmword ptr [rbp+rax-30],xmm4
vmovdqa   xmmword ptr [rbp+rax-20],xmm4
add       rax,30
jne       short M01_L00
mov       [rbp-40],rax
mov       [rbp-0C0],rsp
test      rcx,rcx
je        near ptr M01_L16
mov       rax,1E6CA8009F0
mov       rbx,[rax]
mov       [rbp-40],rcx
mov       rcx,1E6CA80EF18
mov       rsi,[rcx]
cmp       byte ptr [rsi+9E],0
jne       short M01_L01
mov       rcx,rsi
call      qword ptr [7FF9F6306A48]; System.Text.Json.JsonSerializerOptions.ConfigureForJsonSerializer()
M01_L01
 
mov       rdx,[rsi+18]
test      rdx,rdx
je        near ptr M01_L17
M01_L02
 
mov       r8,rdx
test      r8,r8
je        short M01_L03
mov       rcx,offset MT_System.Text.Json.Serialization.Metadata.JsonTypeInfo`1[[System.Object, System.Private.CoreLib]]
cmp       [r8],rcx
jne       near ptr M01_L18
M01_L03
 
lea       rdx,[rbp-40]
mov       rcx,offset MD_System.Text.Json.JsonSerializer.WriteString[[System.Object, System.Private.CoreLib]](System.Object ByRef, System.Text.Json.Serialization.Metadata.JsonTypeInfo`1)
call      qword ptr [7FF9F678D200]; System.Text.Json.JsonSerializer.WriteString[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef, System.Text.Json.Serialization.Metadata.JsonTypeInfo`1)
mov       rdi,rax
test      rdi,rdi
je        near ptr M01_L20
cmp       dword ptr [rdi+8],20
jle       near ptr M01_L19
lea       r8,[rdi+0C]
mov       [rbp-48],r8
mov       r14,[rbp-48]
mov       r15d,[rdi+8]
lea       r8,[rbp-50]
lea       r9,[rbp-58]
mov       rcx,r14
mov       edx,r15d
call      qword ptr [7FF9F60CD140]; System.Text.Unicode.Utf16Utility.GetPointerToFirstInvalidChar(Char*, Int32, Int64 ByRef, Int32 ByRef)
sub       rax,r14
mov       r9,rax
shr       r9,3F
add       r9,rax
sar       r9,1
movsxd    r13,r9d
add       r13,[rbp-50]
cmp       r13,7FFFFFFF
ja        near ptr M01_L22
cmp       r9d,r15d
jne       near ptr M01_L21
M01_L04
 
xor       edx,edx
mov       [rbp-48],rdx
movsxd    rdx,r13d
mov       rcx,offset MT_System.Byte[]
call      CORINFO_HELP_NEWARR_1_VC
mov       r14,rax
mov       [rsp+20],r14
xor       r9d,r9d
mov       [rsp+28],r9d
mov       r9d,[rdi+8]
mov       rcx,rbx
mov       rdx,rdi
xor       r8d,r8d
call      qword ptr [7FF9F603A478]; System.Text.UTF8Encoding.GetBytes(System.String, Int32, Int32, Byte[], Int32)
M01_L05
 
test      r14,r14
je        near ptr M01_L23
lea       rsi,[r14+10]
mov       ebx,[r14+8]
mov       rcx,offset MT_System.Byte[]
mov       edx,20
call      CORINFO_HELP_NEWARR_1_VC
mov       rdi,rax
lea       rdx,[rdi+10]
mov       r8d,20
cmp       r8d,20
jl        near ptr M01_L24
xor       ecx,ecx
mov       [rbp-80],rsi
mov       [rbp-78],ebx
mov       [rbp-90],rcx
xor       ecx,ecx
mov       [rbp-88],ecx
mov       [rbp-0A0],rdx
mov       [rbp-98],r8d
lea       rdx,[rbp-60]
mov       [rsp+28],rdx
lea       rdx,[rbp-0A0]
mov       [rsp+20],rdx
lea       rdx,[rbp-80]
lea       r8,[rbp-90]
mov       rcx,2275C6D9358
xor       r9d,r9d
call      qword ptr [7FF9F68AD920]; System.Security.Cryptography.HashProviderDispenser+OneShotHashProvider.HashDataUsingPseudoHandle(System.String, System.ReadOnlySpan`1, System.ReadOnlySpan`1, Boolean, System.Span`1, Int32 ByRef)
add       rdi,10
mov       ebx,20
mov       rcx,1E6CA80EF20
mov       rcx,[rcx]
cmp       qword ptr [rcx+8],0
jne       near ptr M01_L25
mov       rcx,[rcx+18]
M01_L06
 
mov       rsi,rcx
mov       rcx,offset MT_Microsoft.Extensions.ObjectPool.DefaultObjectPool`1[[System.Text.StringBuilder, System.Private.CoreLib]]
cmp       [rsi],rcx
jne       near ptr M01_L28
mov       rcx,[rsi+20]
mov       [rbp-68],rcx
cmp       qword ptr [rbp-68],0
je        near ptr M01_L26
lea       rcx,[rsi+20]
mov       r8,[rbp-68]
xor       edx,edx
call      System.Threading.Interlocked.CompareExchange(System.Object ByRef, System.Object, System.Object)
cmp       rax,[rbp-68]
jne       near ptr M01_L26
M01_L07
 
mov       r12,[rbp-68]
M01_L08
 
xor       ecx,ecx
mov       [rbp-68],rcx
M01_L09
 
cmp       [r12],r12b
mov       rcx,r12
xor       edx,edx
call      qword ptr [7FF9F60EC1F8]; System.Text.StringBuilder.set_Length(Int32)
mov       [rbp-0A8],r12
xor       r14d,r14d
test      ebx,ebx
jle       near ptr M01_L15
M01_L10
 
mov       ecx,r14d
movzx     ecx,byte ptr [rdi+rcx]
mov       r8,1E6CA800428
mov       r8,[r8]
mov       rdx,2275C6E77D8
call      qword ptr [7FF9F6024810]; System.Number.g__FormatUInt32Slow|43_0(UInt32, System.String, System.IFormatProvider)
test      rax,rax
je        short M01_L14
lea       rdx,[rax+0C]
mov       r8d,[rax+8]
test      r8d,r8d
je        short M01_L14
mov       rcx,[r12+8]
mov       eax,[r12+18]
lea       r15d,[rax+r8]
cmp       r15d,[rcx+8]
ja        short M01_L13
cdqe
lea       rcx,[rcx+rax*2+10]
cmp       r8d,2
jg        short M01_L11
movzx     eax,word ptr [rdx]
mov       [rcx],ax
cmp       r8d,2
jne       short M01_L12
movzx     r8d,word ptr [rdx+2]
mov       [rcx+2],r8w
jmp       short M01_L12
M01_L11
 
movsxd    r8,r8d
add       r8,r8
call      qword ptr [7FF9F5E95B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
M01_L12
 
mov       [r12+18],r15d
jmp       short M01_L14
M01_L13
 
mov       rcx,r12
call      qword ptr [7FF9F60ECA98]; System.Text.StringBuilder.AppendWithExpansion(Char ByRef, Int32)
M01_L14
 
inc       r14d
cmp       r14d,ebx
jl        near ptr M01_L10
M01_L15
 
mov       rcx,r12
call      qword ptr [7FF9F60F8140]; System.Text.StringBuilder.ToString()
mov       [rbp-0B0],rax
mov       rcx,rsp
call      M01_L29
nop
mov       rax,[rbp-0B0]
add       rsp,0B8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L16
 
call      qword ptr [7FF9F63652C0]
mov       ecx,7D9
mov       rdx,7FF9F62E3C60
call      CORINFO_HELP_STRCNS
mov       r13,rax
mov       ecx,1446
mov       rdx,7FF9F6175A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,r13
call      qword ptr [7FF9F5DE6B08]; System.String.Concat(System.String, System.String)
mov       rsi,rax
mov       ecx,1
mov       rdx,7FF9F62E3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F5DE6B08]; System.String.Concat(System.String, System.String)
mov       r12,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63650B0]
mov       r8,rax
mov       rdx,r12
mov       rcx,rdi
call      qword ptr [7FF9F6076670]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L17
 
mov       rcx,rsi
mov       byte ptr [rbp-70],1
mov       byte ptr [rbp-6F],1
xor       r9d,r9d
mov       [rsp+20],r9d
mov       [rsp+28],r9d
movzx     r9d,word ptr [rbp-70]
mov       rdx,2275C6D2D10
mov       r8d,1
call      qword ptr [7FF9F63062F8]; System.Text.Json.JsonSerializerOptions.GetTypeInfoInternal(System.Type, Boolean, System.Nullable`1, Boolean, Boolean)
mov       rdi,rax
lea       rcx,[rsi+18]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       rdx,rdi
jmp       near ptr M01_L02
M01_L18
 
call      qword ptr [7FF9F5DE43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M01_L19
 
mov       rcx,rbx
mov       rdx,rdi
call      qword ptr [7FF9F60C50C8]; System.Text.UTF8Encoding+UTF8EncodingSealed.GetBytesForSmallInput(System.String)
mov       r14,rax
jmp       near ptr M01_L05
M01_L20
 
mov       ecx,1763
mov       rdx,7FF9F5C94000
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FF9F60766E8]
int       3
M01_L21
 
mov       rcx,rbx
mov       rdx,r14
mov       r8d,r15d
call      qword ptr [7FF9F5DEC8A0]
add       r13d,eax
jns       near ptr M01_L04
M01_L22
 
call      qword ptr [7FF9F5DEC7E0]
int       3
M01_L23
 
mov       ecx,6A61
mov       rdx,7FF9F6310100
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FF9F60766E8]
int       3
M01_L24
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
call      qword ptr [7FF9F6A74AE0]
mov       rsi,rax
mov       ecx,4465
mov       rdx,7FF9F6310100
call      CORINFO_HELP_STRCNS
mov       r8,rax
mov       rdx,rsi
mov       rcx,rbx
call      qword ptr [7FF9F5DEF750]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M01_L25
 
call      qword ptr [7FF9F625EE68]; System.Lazy`1[[System.__Canon, System.Private.CoreLib]].CreateValue()
mov       rcx,rax
jmp       near ptr M01_L06
M01_L26
 
mov       rcx,[rsi+18]
lea       rdx,[rbp-68]
cmp       [rcx],ecx
call      qword ptr [7FF9F65CEBF8]; System.Collections.Concurrent.ConcurrentQueue`1[[System.__Canon, System.Private.CoreLib]].TryDequeue(System.__Canon ByRef)
test      eax,eax
je        short M01_L27
add       rsi,2C
lock dec  dword ptr [rsi]
jmp       near ptr M01_L07
M01_L27
 
mov       rax,[rsi+8]
mov       rcx,[rax+8]
call      qword ptr [rax+18]
mov       r12,rax
jmp       near ptr M01_L08
M01_L28
 
mov       rcx,rsi
mov       rax,[rsi]
mov       rax,[rax+40]
call      qword ptr [rax+20]
mov       r12,rax
jmp       near ptr M01_L09
M01_L29
 
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,38
mov       rbp,[rcx+30]
mov       [rsp+30],rbp
lea       rbp,[rbp+0F0]
mov       rcx,1E6CA80EF20
mov       rcx,[rcx]
cmp       qword ptr [rcx+8],0
je        short M01_L30
call      qword ptr [7FF9F625EE68]; System.Lazy`1[[System.__Canon, System.Private.CoreLib]].CreateValue()
mov       rbx,rax
jmp       short M01_L31
M01_L30
 
mov       rbx,[rcx+18]
M01_L31
 
mov       rcx,offset MT_Microsoft.Extensions.ObjectPool.DefaultObjectPool`1[[System.Text.StringBuilder, System.Private.CoreLib]]
cmp       [rbx],rcx
jne       near ptr M01_L36
mov       rdi,[rbx+10]
mov       rcx,offset Microsoft.Extensions.ObjectPool.StringBuilderPooledObjectPolicy.Return(System.Text.StringBuilder)
cmp       [rdi+18],rcx
jne       short M01_L32
mov       r12,[rbp-0A8]
mov       rcx,[r12+8]
mov       ecx,[rcx+8]
add       ecx,[r12+1C]
mov       rdx,[rdi+8]
cmp       ecx,[rdx+0C]
jg        near ptr M01_L37
mov       rcx,r12
xor       edx,edx
call      qword ptr [7FF9F60EC1F8]; System.Text.StringBuilder.set_Length(Int32)
jmp       short M01_L33
M01_L32
 
mov       rdx,[rbp-0A8]
mov       rcx,[rdi+8]
call      qword ptr [rdi+18]
test      eax,eax
mov       r12,[rbp-0A8]
je        short M01_L37
M01_L33
 
cmp       qword ptr [rbx+20],0
jne       short M01_L34
lea       rcx,[rbx+20]
mov       rdx,r12
xor       r8d,r8d
call      System.Threading.Interlocked.CompareExchange(System.Object ByRef, System.Object, System.Object)
test      rax,rax
je        short M01_L37
M01_L34
 
lea       rcx,[rbx+2C]
mov       edx,1
lock xadd [rcx],edx
inc       edx
cmp       edx,[rbx+28]
jg        short M01_L35
mov       rcx,[rbx+18]
mov       rdx,r12
cmp       [rcx],ecx
call      qword ptr [7FF9F65CEBC8]; System.Collections.Concurrent.ConcurrentQueue`1[[System.__Canon, System.Private.CoreLib]].Enqueue(System.__Canon)
jmp       short M01_L37
M01_L35
 
add       rbx,2C
lock dec  dword ptr [rbx]
jmp       short M01_L37
M01_L36
 
mov       r12,[rbp-0A8]
mov       rcx,rbx
mov       rdx,r12
mov       rax,[rbx]
mov       rax,[rax+40]
call      qword ptr [rax+28]
M01_L37
 
nop
add       rsp,38
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.ComputeSHA256Hash()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rcx,[rbx+298]
call      qword ptr [7FF9F629F588]; DotNetTips.Spargine.Extensions.ObjectExtensions.ComputeSha256Hash(System.Object)
mov       [rsp+28],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.ObjectExtensions.ComputeSha256Hash(System.Object)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,0B8
lea       rbp,[rsp+0F0]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-0B0],xmm4
mov       rax,0FFFFFFFFFFFFFFA0
M01_L00
 
vmovdqa   xmmword ptr [rbp+rax-40],xmm4
vmovdqa   xmmword ptr [rbp+rax-30],xmm4
vmovdqa   xmmword ptr [rbp+rax-20],xmm4
add       rax,30
jne       short M01_L00
mov       [rbp-40],rax
mov       [rbp-0C0],rsp
test      rcx,rcx
je        near ptr M01_L16
mov       rax,1BB83C009F0
mov       rbx,[rax]
mov       [rbp-40],rcx
mov       rcx,1BB83C0EF18
mov       rsi,[rcx]
cmp       byte ptr [rsi+9E],0
jne       short M01_L01
mov       rcx,rsi
call      qword ptr [7FF9F62D6A48]; System.Text.Json.JsonSerializerOptions.ConfigureForJsonSerializer()
M01_L01
 
mov       rdx,[rsi+18]
test      rdx,rdx
je        near ptr M01_L17
M01_L02
 
mov       r8,rdx
test      r8,r8
je        short M01_L03
mov       rcx,offset MT_System.Text.Json.Serialization.Metadata.JsonTypeInfo`1[[System.Object, System.Private.CoreLib]]
cmp       [r8],rcx
jne       near ptr M01_L18
M01_L03
 
lea       rdx,[rbp-40]
mov       rcx,offset MD_System.Text.Json.JsonSerializer.WriteString[[System.Object, System.Private.CoreLib]](System.Object ByRef, System.Text.Json.Serialization.Metadata.JsonTypeInfo`1)
call      qword ptr [7FF9F675D200]; System.Text.Json.JsonSerializer.WriteString[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef, System.Text.Json.Serialization.Metadata.JsonTypeInfo`1)
mov       rdi,rax
test      rdi,rdi
je        near ptr M01_L20
cmp       dword ptr [rdi+8],20
jle       near ptr M01_L19
lea       r8,[rdi+0C]
mov       [rbp-48],r8
mov       r14,[rbp-48]
mov       r15d,[rdi+8]
lea       r8,[rbp-50]
lea       r9,[rbp-58]
mov       rcx,r14
mov       edx,r15d
call      qword ptr [7FF9F609D140]; System.Text.Unicode.Utf16Utility.GetPointerToFirstInvalidChar(Char*, Int32, Int64 ByRef, Int32 ByRef)
sub       rax,r14
mov       r9,rax
shr       r9,3F
add       r9,rax
sar       r9,1
movsxd    r13,r9d
add       r13,[rbp-50]
cmp       r13,7FFFFFFF
ja        near ptr M01_L22
cmp       r9d,r15d
jne       near ptr M01_L21
M01_L04
 
xor       edx,edx
mov       [rbp-48],rdx
movsxd    rdx,r13d
mov       rcx,offset MT_System.Byte[]
call      CORINFO_HELP_NEWARR_1_VC
mov       r14,rax
mov       [rsp+20],r14
xor       r9d,r9d
mov       [rsp+28],r9d
mov       r9d,[rdi+8]
mov       rcx,rbx
mov       rdx,rdi
xor       r8d,r8d
call      qword ptr [7FF9F600A478]; System.Text.UTF8Encoding.GetBytes(System.String, Int32, Int32, Byte[], Int32)
M01_L05
 
test      r14,r14
je        near ptr M01_L23
lea       rsi,[r14+10]
mov       ebx,[r14+8]
mov       rcx,offset MT_System.Byte[]
mov       edx,20
call      CORINFO_HELP_NEWARR_1_VC
mov       rdi,rax
lea       rdx,[rdi+10]
mov       r8d,20
cmp       r8d,20
jl        near ptr M01_L24
xor       ecx,ecx
mov       [rbp-80],rsi
mov       [rbp-78],ebx
mov       [rbp-90],rcx
xor       ecx,ecx
mov       [rbp-88],ecx
mov       [rbp-0A0],rdx
mov       [rbp-98],r8d
lea       rdx,[rbp-60]
mov       [rsp+28],rdx
lea       rdx,[rbp-0A0]
mov       [rsp+20],rdx
lea       rdx,[rbp-80]
lea       r8,[rbp-90]
mov       rcx,1FC15929358
xor       r9d,r9d
call      qword ptr [7FF9F687DA28]; System.Security.Cryptography.HashProviderDispenser+OneShotHashProvider.HashDataUsingPseudoHandle(System.String, System.ReadOnlySpan`1, System.ReadOnlySpan`1, Boolean, System.Span`1, Int32 ByRef)
add       rdi,10
mov       ebx,20
mov       rcx,1BB83C0EF20
mov       rcx,[rcx]
cmp       qword ptr [rcx+8],0
jne       near ptr M01_L25
mov       rcx,[rcx+18]
M01_L06
 
mov       rsi,rcx
mov       rcx,offset MT_Microsoft.Extensions.ObjectPool.DefaultObjectPool`1[[System.Text.StringBuilder, System.Private.CoreLib]]
cmp       [rsi],rcx
jne       near ptr M01_L28
mov       rcx,[rsi+20]
mov       [rbp-68],rcx
cmp       qword ptr [rbp-68],0
je        near ptr M01_L26
lea       rcx,[rsi+20]
mov       r8,[rbp-68]
xor       edx,edx
call      System.Threading.Interlocked.CompareExchange(System.Object ByRef, System.Object, System.Object)
cmp       rax,[rbp-68]
jne       near ptr M01_L26
M01_L07
 
mov       r12,[rbp-68]
M01_L08
 
xor       ecx,ecx
mov       [rbp-68],rcx
M01_L09
 
cmp       [r12],r12b
mov       rcx,r12
xor       edx,edx
call      qword ptr [7FF9F60BC1F8]; System.Text.StringBuilder.set_Length(Int32)
mov       [rbp-0A8],r12
xor       r14d,r14d
test      ebx,ebx
jle       near ptr M01_L15
M01_L10
 
mov       ecx,r14d
movzx     ecx,byte ptr [rdi+rcx]
mov       r8,1BB83C00428
mov       r8,[r8]
mov       rdx,1FC159377D8
call      qword ptr [7FF9F5FF4810]; System.Number.g__FormatUInt32Slow|43_0(UInt32, System.String, System.IFormatProvider)
test      rax,rax
je        short M01_L14
lea       rdx,[rax+0C]
mov       r8d,[rax+8]
test      r8d,r8d
je        short M01_L14
mov       rcx,[r12+8]
mov       eax,[r12+18]
lea       r15d,[rax+r8]
cmp       r15d,[rcx+8]
ja        short M01_L13
cdqe
lea       rcx,[rcx+rax*2+10]
cmp       r8d,2
jg        short M01_L11
movzx     eax,word ptr [rdx]
mov       [rcx],ax
cmp       r8d,2
jne       short M01_L12
movzx     r8d,word ptr [rdx+2]
mov       [rcx+2],r8w
jmp       short M01_L12
M01_L11
 
movsxd    r8,r8d
add       r8,r8
call      qword ptr [7FF9F5E65B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
M01_L12
 
mov       [r12+18],r15d
jmp       short M01_L14
M01_L13
 
mov       rcx,r12
call      qword ptr [7FF9F60BCA98]; System.Text.StringBuilder.AppendWithExpansion(Char ByRef, Int32)
M01_L14
 
inc       r14d
cmp       r14d,ebx
jl        near ptr M01_L10
M01_L15
 
mov       rcx,r12
call      qword ptr [7FF9F60C8140]; System.Text.StringBuilder.ToString()
mov       [rbp-0B0],rax
mov       rcx,rsp
call      M01_L29
nop
mov       rax,[rbp-0B0]
add       rsp,0B8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L16
 
call      qword ptr [7FF9F63352C0]
mov       ecx,7D9
mov       rdx,7FF9F62B3C60
call      CORINFO_HELP_STRCNS
mov       r13,rax
mov       ecx,1446
mov       rdx,7FF9F6145A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,r13
call      qword ptr [7FF9F5DB6B08]; System.String.Concat(System.String, System.String)
mov       rsi,rax
mov       ecx,1
mov       rdx,7FF9F62B3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F5DB6B08]; System.String.Concat(System.String, System.String)
mov       r12,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63350B0]
mov       r8,rax
mov       rdx,r12
mov       rcx,rdi
call      qword ptr [7FF9F6046670]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L17
 
mov       rcx,rsi
mov       byte ptr [rbp-70],1
mov       byte ptr [rbp-6F],1
xor       r9d,r9d
mov       [rsp+20],r9d
mov       [rsp+28],r9d
movzx     r9d,word ptr [rbp-70]
mov       rdx,1FC15922D10
mov       r8d,1
call      qword ptr [7FF9F62D62F8]; System.Text.Json.JsonSerializerOptions.GetTypeInfoInternal(System.Type, Boolean, System.Nullable`1, Boolean, Boolean)
mov       rdi,rax
lea       rcx,[rsi+18]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       rdx,rdi
jmp       near ptr M01_L02
M01_L18
 
call      qword ptr [7FF9F5DB43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M01_L19
 
mov       rcx,rbx
mov       rdx,rdi
call      qword ptr [7FF9F60950C8]; System.Text.UTF8Encoding+UTF8EncodingSealed.GetBytesForSmallInput(System.String)
mov       r14,rax
jmp       near ptr M01_L05
M01_L20
 
mov       ecx,1763
mov       rdx,7FF9F5C64000
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FF9F60466E8]
int       3
M01_L21
 
mov       rcx,rbx
mov       rdx,r14
mov       r8d,r15d
call      qword ptr [7FF9F5DBC8A0]
add       r13d,eax
jns       near ptr M01_L04
M01_L22
 
call      qword ptr [7FF9F5DBC7E0]
int       3
M01_L23
 
mov       ecx,6A61
mov       rdx,7FF9F62E0100
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FF9F60466E8]
int       3
M01_L24
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
call      qword ptr [7FF9F6A44168]
mov       rsi,rax
mov       ecx,4465
mov       rdx,7FF9F62E0100
call      CORINFO_HELP_STRCNS
mov       r8,rax
mov       rdx,rsi
mov       rcx,rbx
call      qword ptr [7FF9F5DBF750]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M01_L25
 
call      qword ptr [7FF9F622EE68]; System.Lazy`1[[System.__Canon, System.Private.CoreLib]].CreateValue()
mov       rcx,rax
jmp       near ptr M01_L06
M01_L26
 
mov       rcx,[rsi+18]
lea       rdx,[rbp-68]
cmp       [rcx],ecx
call      qword ptr [7FF9F659EBF8]; System.Collections.Concurrent.ConcurrentQueue`1[[System.__Canon, System.Private.CoreLib]].TryDequeue(System.__Canon ByRef)
test      eax,eax
je        short M01_L27
add       rsi,2C
lock dec  dword ptr [rsi]
jmp       near ptr M01_L07
M01_L27
 
mov       rax,[rsi+8]
mov       rcx,[rax+8]
call      qword ptr [rax+18]
mov       r12,rax
jmp       near ptr M01_L08
M01_L28
 
mov       rcx,rsi
mov       rax,[rsi]
mov       rax,[rax+40]
call      qword ptr [rax+20]
mov       r12,rax
jmp       near ptr M01_L09
M01_L29
 
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,38
mov       rbp,[rcx+30]
mov       [rsp+30],rbp
lea       rbp,[rbp+0F0]
mov       rcx,1BB83C0EF20
mov       rcx,[rcx]
cmp       qword ptr [rcx+8],0
je        short M01_L30
call      qword ptr [7FF9F622EE68]; System.Lazy`1[[System.__Canon, System.Private.CoreLib]].CreateValue()
mov       rbx,rax
jmp       short M01_L31
M01_L30
 
mov       rbx,[rcx+18]
M01_L31
 
mov       rcx,offset MT_Microsoft.Extensions.ObjectPool.DefaultObjectPool`1[[System.Text.StringBuilder, System.Private.CoreLib]]
cmp       [rbx],rcx
jne       near ptr M01_L36
mov       rdi,[rbx+10]
mov       rcx,offset Microsoft.Extensions.ObjectPool.StringBuilderPooledObjectPolicy.Return(System.Text.StringBuilder)
cmp       [rdi+18],rcx
jne       short M01_L32
mov       r12,[rbp-0A8]
mov       rcx,[r12+8]
mov       ecx,[rcx+8]
add       ecx,[r12+1C]
mov       rdx,[rdi+8]
cmp       ecx,[rdx+0C]
jg        near ptr M01_L37
mov       rcx,r12
xor       edx,edx
call      qword ptr [7FF9F60BC1F8]; System.Text.StringBuilder.set_Length(Int32)
jmp       short M01_L33
M01_L32
 
mov       rdx,[rbp-0A8]
mov       rcx,[rdi+8]
call      qword ptr [rdi+18]
test      eax,eax
mov       r12,[rbp-0A8]
je        short M01_L37
M01_L33
 
cmp       qword ptr [rbx+20],0
jne       short M01_L34
lea       rcx,[rbx+20]
mov       rdx,r12
xor       r8d,r8d
call      System.Threading.Interlocked.CompareExchange(System.Object ByRef, System.Object, System.Object)
test      rax,rax
je        short M01_L37
M01_L34
 
lea       rcx,[rbx+2C]
mov       edx,1
lock xadd [rcx],edx
inc       edx
cmp       edx,[rbx+28]
jg        short M01_L35
mov       rcx,[rbx+18]
mov       rdx,r12
cmp       [rcx],ecx
call      qword ptr [7FF9F659EBC8]; System.Collections.Concurrent.ConcurrentQueue`1[[System.__Canon, System.Private.CoreLib]].Enqueue(System.__Canon)
jmp       short M01_L37
M01_L35
 
add       rbx,2C
lock dec  dword ptr [rbx]
jmp       short M01_L37
M01_L36
 
mov       r12,[rbp-0A8]
mov       rcx,rbx
mov       rdx,r12
mov       rax,[rbx]
mov       rax,[rax+40]
call      qword ptr [rax+28]
M01_L37
 
nop
add       rsp,38
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.ComputeSHA256Hash()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rcx,[rbx+298]
call      qword ptr [7FF9F629F588]; DotNetTips.Spargine.Extensions.ObjectExtensions.ComputeSha256Hash(System.Object)
mov       [rsp+28],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.ObjectExtensions.ComputeSha256Hash(System.Object)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,0B8
lea       rbp,[rsp+0F0]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-0B0],xmm4
mov       rax,0FFFFFFFFFFFFFFA0
M01_L00
 
vmovdqa   xmmword ptr [rbp+rax-40],xmm4
vmovdqa   xmmword ptr [rbp+rax-30],xmm4
vmovdqa   xmmword ptr [rbp+rax-20],xmm4
add       rax,30
jne       short M01_L00
mov       [rbp-40],rax
mov       [rbp-0C0],rsp
test      rcx,rcx
je        near ptr M01_L16
mov       rax,1756C4009F0
mov       rbx,[rax]
mov       [rbp-40],rcx
mov       rcx,1756C40EF18
mov       rsi,[rcx]
cmp       byte ptr [rsi+9E],0
jne       short M01_L01
mov       rcx,rsi
call      qword ptr [7FF9F62D6A48]; System.Text.Json.JsonSerializerOptions.ConfigureForJsonSerializer()
M01_L01
 
mov       rdx,[rsi+18]
test      rdx,rdx
je        near ptr M01_L17
M01_L02
 
mov       r8,rdx
test      r8,r8
je        short M01_L03
mov       rcx,offset MT_System.Text.Json.Serialization.Metadata.JsonTypeInfo`1[[System.Object, System.Private.CoreLib]]
cmp       [r8],rcx
jne       near ptr M01_L18
M01_L03
 
lea       rdx,[rbp-40]
mov       rcx,offset MD_System.Text.Json.JsonSerializer.WriteString[[System.Object, System.Private.CoreLib]](System.Object ByRef, System.Text.Json.Serialization.Metadata.JsonTypeInfo`1)
call      qword ptr [7FF9F675D200]; System.Text.Json.JsonSerializer.WriteString[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef, System.Text.Json.Serialization.Metadata.JsonTypeInfo`1)
mov       rdi,rax
test      rdi,rdi
je        near ptr M01_L20
cmp       dword ptr [rdi+8],20
jle       near ptr M01_L19
lea       r8,[rdi+0C]
mov       [rbp-48],r8
mov       r14,[rbp-48]
mov       r15d,[rdi+8]
lea       r8,[rbp-50]
lea       r9,[rbp-58]
mov       rcx,r14
mov       edx,r15d
call      qword ptr [7FF9F609D140]; System.Text.Unicode.Utf16Utility.GetPointerToFirstInvalidChar(Char*, Int32, Int64 ByRef, Int32 ByRef)
sub       rax,r14
mov       r9,rax
shr       r9,3F
add       r9,rax
sar       r9,1
movsxd    r13,r9d
add       r13,[rbp-50]
cmp       r13,7FFFFFFF
ja        near ptr M01_L22
cmp       r9d,r15d
jne       near ptr M01_L21
M01_L04
 
xor       edx,edx
mov       [rbp-48],rdx
movsxd    rdx,r13d
mov       rcx,offset MT_System.Byte[]
call      CORINFO_HELP_NEWARR_1_VC
mov       r14,rax
mov       [rsp+20],r14
xor       r9d,r9d
mov       [rsp+28],r9d
mov       r9d,[rdi+8]
mov       rcx,rbx
mov       rdx,rdi
xor       r8d,r8d
call      qword ptr [7FF9F600A478]; System.Text.UTF8Encoding.GetBytes(System.String, Int32, Int32, Byte[], Int32)
M01_L05
 
test      r14,r14
je        near ptr M01_L23
lea       rsi,[r14+10]
mov       ebx,[r14+8]
mov       rcx,offset MT_System.Byte[]
mov       edx,20
call      CORINFO_HELP_NEWARR_1_VC
mov       r12,rax
lea       rdx,[r12+10]
mov       r8d,20
cmp       r8d,20
jl        near ptr M01_L24
xor       ecx,ecx
mov       [rbp-80],rsi
mov       [rbp-78],ebx
mov       [rbp-90],rcx
xor       ecx,ecx
mov       [rbp-88],ecx
mov       [rbp-0A0],rdx
mov       [rbp-98],r8d
lea       rdx,[rbp-60]
mov       [rsp+28],rdx
lea       rdx,[rbp-0A0]
mov       [rsp+20],rdx
lea       rdx,[rbp-80]
lea       r8,[rbp-90]
mov       rcx,1B5FE3C9358
xor       r9d,r9d
call      qword ptr [7FF9F687EEB0]; System.Security.Cryptography.HashProviderDispenser+OneShotHashProvider.HashDataUsingPseudoHandle(System.String, System.ReadOnlySpan`1, System.ReadOnlySpan`1, Boolean, System.Span`1, Int32 ByRef)
add       r12,10
mov       ebx,20
mov       rcx,1756C40EF20
mov       rcx,[rcx]
cmp       qword ptr [rcx+8],0
jne       near ptr M01_L25
mov       rcx,[rcx+18]
M01_L06
 
mov       rsi,rcx
mov       rcx,offset MT_Microsoft.Extensions.ObjectPool.DefaultObjectPool`1[[System.Text.StringBuilder, System.Private.CoreLib]]
cmp       [rsi],rcx
jne       near ptr M01_L28
mov       rcx,[rsi+20]
mov       [rbp-68],rcx
cmp       qword ptr [rbp-68],0
je        near ptr M01_L26
lea       rcx,[rsi+20]
mov       r8,[rbp-68]
xor       edx,edx
call      System.Threading.Interlocked.CompareExchange(System.Object ByRef, System.Object, System.Object)
cmp       rax,[rbp-68]
jne       near ptr M01_L26
M01_L07
 
mov       rdi,[rbp-68]
M01_L08
 
xor       ecx,ecx
mov       [rbp-68],rcx
M01_L09
 
cmp       [rdi],dil
mov       rcx,rdi
xor       edx,edx
call      qword ptr [7FF9F60BC1F8]; System.Text.StringBuilder.set_Length(Int32)
mov       [rbp-0A8],rdi
xor       r14d,r14d
test      ebx,ebx
jle       near ptr M01_L15
M01_L10
 
mov       ecx,r14d
movzx     ecx,byte ptr [r12+rcx]
mov       r8,1756C400428
mov       r8,[r8]
mov       rdx,1B5FE3D77F8
call      qword ptr [7FF9F5FF4810]; System.Number.g__FormatUInt32Slow|43_0(UInt32, System.String, System.IFormatProvider)
test      rax,rax
je        short M01_L14
lea       rdx,[rax+0C]
mov       r8d,[rax+8]
test      r8d,r8d
je        short M01_L14
mov       rcx,[rdi+8]
mov       eax,[rdi+18]
lea       esi,[rax+r8]
cmp       esi,[rcx+8]
ja        short M01_L13
cdqe
lea       rcx,[rcx+rax*2+10]
cmp       r8d,2
jg        short M01_L11
movzx     eax,word ptr [rdx]
mov       [rcx],ax
cmp       r8d,2
jne       short M01_L12
movzx     eax,word ptr [rdx+2]
mov       [rcx+2],ax
jmp       short M01_L12
M01_L11
 
movsxd    r8,r8d
add       r8,r8
call      qword ptr [7FF9F5E65B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
M01_L12
 
mov       [rdi+18],esi
jmp       short M01_L14
M01_L13
 
mov       rcx,rdi
call      qword ptr [7FF9F60BCA98]; System.Text.StringBuilder.AppendWithExpansion(Char ByRef, Int32)
M01_L14
 
inc       r14d
cmp       r14d,ebx
jl        near ptr M01_L10
M01_L15
 
mov       rcx,rdi
call      qword ptr [7FF9F60C8140]; System.Text.StringBuilder.ToString()
mov       [rbp-0B0],rax
mov       rcx,rsp
call      M01_L29
nop
mov       rax,[rbp-0B0]
add       rsp,0B8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L16
 
call      qword ptr [7FF9F63352C0]
mov       ecx,7D9
mov       rdx,7FF9F62B3C60
call      CORINFO_HELP_STRCNS
mov       r15,rax
mov       ecx,1446
mov       rdx,7FF9F6145A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,r15
call      qword ptr [7FF9F5DB6B08]; System.String.Concat(System.String, System.String)
mov       r13,rax
mov       ecx,1
mov       rdx,7FF9F62B3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,r13
call      qword ptr [7FF9F5DB6B08]; System.String.Concat(System.String, System.String)
mov       rsi,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
call      qword ptr [7FF9F63350B0]
mov       r8,rax
mov       rdx,rsi
mov       rcx,rbx
call      qword ptr [7FF9F6046670]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M01_L17
 
mov       rcx,rsi
mov       byte ptr [rbp-70],1
mov       byte ptr [rbp-6F],1
xor       r9d,r9d
mov       [rsp+20],r9d
mov       [rsp+28],r9d
movzx     r9d,word ptr [rbp-70]
mov       rdx,1B5FE3C2D10
mov       r8d,1
call      qword ptr [7FF9F62D62F8]; System.Text.Json.JsonSerializerOptions.GetTypeInfoInternal(System.Type, Boolean, System.Nullable`1, Boolean, Boolean)
mov       r14,rax
lea       rcx,[rsi+18]
mov       rdx,r14
call      CORINFO_HELP_ASSIGN_REF
mov       rdx,r14
jmp       near ptr M01_L02
M01_L18
 
call      qword ptr [7FF9F5DB43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M01_L19
 
mov       rcx,rbx
mov       rdx,rdi
call      qword ptr [7FF9F60950C8]; System.Text.UTF8Encoding+UTF8EncodingSealed.GetBytesForSmallInput(System.String)
mov       r14,rax
jmp       near ptr M01_L05
M01_L20
 
mov       ecx,1763
mov       rdx,7FF9F5C64000
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FF9F60466E8]
int       3
M01_L21
 
mov       rcx,rbx
mov       rdx,r14
mov       r8d,r15d
call      qword ptr [7FF9F5DBC8A0]
add       r13d,eax
jns       near ptr M01_L04
M01_L22
 
call      qword ptr [7FF9F5DBC7E0]
int       3
M01_L23
 
mov       ecx,6A61
mov       rdx,7FF9F62E0100
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FF9F60466E8]
int       3
M01_L24
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
call      qword ptr [7FF9F6A45938]
mov       rbx,rax
mov       ecx,4465
mov       rdx,7FF9F62E0100
call      CORINFO_HELP_STRCNS
mov       r8,rax
mov       rdx,rbx
mov       rcx,r12
call      qword ptr [7FF9F5DBF750]
mov       rcx,r12
call      CORINFO_HELP_THROW
M01_L25
 
call      qword ptr [7FF9F622EE68]; System.Lazy`1[[System.__Canon, System.Private.CoreLib]].CreateValue()
mov       rcx,rax
jmp       near ptr M01_L06
M01_L26
 
mov       rcx,[rsi+18]
lea       rdx,[rbp-68]
cmp       [rcx],ecx
call      qword ptr [7FF9F659EF10]; System.Collections.Concurrent.ConcurrentQueue`1[[System.__Canon, System.Private.CoreLib]].TryDequeue(System.__Canon ByRef)
test      eax,eax
je        short M01_L27
add       rsi,2C
lock dec  dword ptr [rsi]
jmp       near ptr M01_L07
M01_L27
 
mov       rax,[rsi+8]
mov       rcx,[rax+8]
call      qword ptr [rax+18]
mov       rdi,rax
jmp       near ptr M01_L08
M01_L28
 
mov       rcx,rsi
mov       rax,[rsi]
mov       rax,[rax+40]
call      qword ptr [rax+20]
mov       rdi,rax
jmp       near ptr M01_L09
M01_L29
 
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,38
mov       rbp,[rcx+30]
mov       [rsp+30],rbp
lea       rbp,[rbp+0F0]
mov       rcx,1756C40EF20
mov       rcx,[rcx]
cmp       qword ptr [rcx+8],0
je        short M01_L30
call      qword ptr [7FF9F622EE68]; System.Lazy`1[[System.__Canon, System.Private.CoreLib]].CreateValue()
mov       rdi,rax
jmp       short M01_L31
M01_L30
 
mov       rdi,[rcx+18]
M01_L31
 
mov       rcx,offset MT_Microsoft.Extensions.ObjectPool.DefaultObjectPool`1[[System.Text.StringBuilder, System.Private.CoreLib]]
cmp       [rdi],rcx
jne       near ptr M01_L36
mov       rax,[rdi+10]
mov       rcx,offset Microsoft.Extensions.ObjectPool.StringBuilderPooledObjectPolicy.Return(System.Text.StringBuilder)
cmp       [rax+18],rcx
jne       short M01_L32
mov       rbx,[rbp-0A8]
mov       rcx,[rbx+8]
mov       ecx,[rcx+8]
add       ecx,[rbx+1C]
mov       rdx,[rax+8]
cmp       ecx,[rdx+0C]
jg        near ptr M01_L37
mov       rcx,rbx
xor       edx,edx
call      qword ptr [7FF9F60BC1F8]; System.Text.StringBuilder.set_Length(Int32)
jmp       short M01_L33
M01_L32
 
mov       rdx,[rbp-0A8]
mov       rcx,[rax+8]
call      qword ptr [rax+18]
test      eax,eax
mov       rbx,[rbp-0A8]
je        short M01_L37
M01_L33
 
cmp       qword ptr [rdi+20],0
jne       short M01_L34
lea       rcx,[rdi+20]
mov       rdx,rbx
xor       r8d,r8d
call      System.Threading.Interlocked.CompareExchange(System.Object ByRef, System.Object, System.Object)
test      rax,rax
je        short M01_L37
M01_L34
 
lea       rcx,[rdi+2C]
mov       edx,1
lock xadd [rcx],edx
inc       edx
cmp       edx,[rdi+28]
jg        short M01_L35
mov       rcx,[rdi+18]
mov       rdx,rbx
cmp       [rcx],ecx
call      qword ptr [7FF9F659EEE0]; System.Collections.Concurrent.ConcurrentQueue`1[[System.__Canon, System.Private.CoreLib]].Enqueue(System.__Canon)
jmp       short M01_L37
M01_L35
 
add       rdi,2C
lock dec  dword ptr [rdi]
jmp       short M01_L37
M01_L36
 
mov       rbx,[rbp-0A8]
mov       rcx,rdi
mov       rdx,rbx
mov       rax,[rdi]
mov       rax,[rax+40]
call      qword ptr [rax+28]
M01_L37
 
nop
add       rsp,38
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.ComputeSHA256Hash()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rcx,[rbx+298]
call      qword ptr [7FF9F628F588]; DotNetTips.Spargine.Extensions.ObjectExtensions.ComputeSha256Hash(System.Object)
mov       [rsp+28],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.ObjectExtensions.ComputeSha256Hash(System.Object)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,0B8
lea       rbp,[rsp+0F0]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-0B0],xmm4
mov       rax,0FFFFFFFFFFFFFFA0
M01_L00
 
vmovdqa   xmmword ptr [rbp+rax-40],xmm4
vmovdqa   xmmword ptr [rbp+rax-30],xmm4
vmovdqa   xmmword ptr [rbp+rax-20],xmm4
add       rax,30
jne       short M01_L00
mov       [rbp-40],rax
mov       [rbp-0C0],rsp
test      rcx,rcx
je        near ptr M01_L16
mov       rax,2C13C0009F0
mov       rbx,[rax]
mov       [rbp-40],rcx
mov       rcx,2C13800CF20
mov       rsi,[rcx]
cmp       byte ptr [rsi+9E],0
jne       short M01_L01
mov       rcx,rsi
call      qword ptr [7FF9F62C6A48]; System.Text.Json.JsonSerializerOptions.ConfigureForJsonSerializer()
M01_L01
 
mov       rdx,[rsi+18]
test      rdx,rdx
je        near ptr M01_L17
M01_L02
 
mov       r8,rdx
test      r8,r8
je        short M01_L03
mov       rcx,offset MT_System.Text.Json.Serialization.Metadata.JsonTypeInfo`1[[System.Object, System.Private.CoreLib]]
cmp       [r8],rcx
jne       near ptr M01_L18
M01_L03
 
lea       rdx,[rbp-40]
mov       rcx,offset MD_System.Text.Json.JsonSerializer.WriteString[[System.Object, System.Private.CoreLib]](System.Object ByRef, System.Text.Json.Serialization.Metadata.JsonTypeInfo`1)
call      qword ptr [7FF9F674D200]; System.Text.Json.JsonSerializer.WriteString[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef, System.Text.Json.Serialization.Metadata.JsonTypeInfo`1)
mov       rdi,rax
test      rdi,rdi
je        near ptr M01_L20
cmp       dword ptr [rdi+8],20
jle       near ptr M01_L19
lea       r8,[rdi+0C]
mov       [rbp-48],r8
mov       r14,[rbp-48]
mov       r15d,[rdi+8]
lea       r8,[rbp-50]
lea       r9,[rbp-58]
mov       rcx,r14
mov       edx,r15d
call      qword ptr [7FF9F608D140]; System.Text.Unicode.Utf16Utility.GetPointerToFirstInvalidChar(Char*, Int32, Int64 ByRef, Int32 ByRef)
sub       rax,r14
mov       r9,rax
shr       r9,3F
add       r9,rax
sar       r9,1
movsxd    r13,r9d
add       r13,[rbp-50]
cmp       r13,7FFFFFFF
ja        near ptr M01_L22
cmp       r9d,r15d
jne       near ptr M01_L21
M01_L04
 
xor       edx,edx
mov       [rbp-48],rdx
movsxd    rdx,r13d
mov       rcx,offset MT_System.Byte[]
call      CORINFO_HELP_NEWARR_1_VC
mov       r14,rax
mov       [rsp+20],r14
xor       r9d,r9d
mov       [rsp+28],r9d
mov       r9d,[rdi+8]
mov       rcx,rbx
mov       rdx,rdi
xor       r8d,r8d
call      qword ptr [7FF9F5FFA478]; System.Text.UTF8Encoding.GetBytes(System.String, Int32, Int32, Byte[], Int32)
M01_L05
 
test      r14,r14
je        near ptr M01_L23
lea       rsi,[r14+10]
mov       ebx,[r14+8]
mov       rcx,offset MT_System.Byte[]
mov       edx,20
call      CORINFO_HELP_NEWARR_1_VC
mov       rdi,rax
lea       rdx,[rdi+10]
mov       r8d,20
cmp       r8d,20
jl        near ptr M01_L24
xor       ecx,ecx
mov       [rbp-80],rsi
mov       [rbp-78],ebx
mov       [rbp-90],rcx
xor       ecx,ecx
mov       [rbp-88],ecx
mov       [rbp-0A0],rdx
mov       [rbp-98],r8d
lea       rdx,[rbp-60]
mov       [rsp+28],rdx
lea       rdx,[rbp-0A0]
mov       [rsp+20],rdx
lea       rdx,[rbp-80]
lea       r8,[rbp-90]
mov       rcx,301CA0E9358
xor       r9d,r9d
call      qword ptr [7FF9F686F5D0]; System.Security.Cryptography.HashProviderDispenser+OneShotHashProvider.HashDataUsingPseudoHandle(System.String, System.ReadOnlySpan`1, System.ReadOnlySpan`1, Boolean, System.Span`1, Int32 ByRef)
add       rdi,10
mov       ebx,20
mov       rcx,2C13800CF28
mov       rcx,[rcx]
cmp       qword ptr [rcx+8],0
jne       near ptr M01_L25
mov       rcx,[rcx+18]
M01_L06
 
mov       rsi,rcx
mov       rcx,offset MT_Microsoft.Extensions.ObjectPool.DefaultObjectPool`1[[System.Text.StringBuilder, System.Private.CoreLib]]
cmp       [rsi],rcx
jne       near ptr M01_L28
mov       rcx,[rsi+20]
mov       [rbp-68],rcx
cmp       qword ptr [rbp-68],0
je        near ptr M01_L26
lea       rcx,[rsi+20]
mov       r8,[rbp-68]
xor       edx,edx
call      System.Threading.Interlocked.CompareExchange(System.Object ByRef, System.Object, System.Object)
cmp       rax,[rbp-68]
jne       near ptr M01_L26
M01_L07
 
mov       r12,[rbp-68]
M01_L08
 
xor       ecx,ecx
mov       [rbp-68],rcx
M01_L09
 
cmp       [r12],r12b
mov       rcx,r12
xor       edx,edx
call      qword ptr [7FF9F60AC1F8]; System.Text.StringBuilder.set_Length(Int32)
mov       [rbp-0A8],r12
xor       r14d,r14d
test      ebx,ebx
jle       near ptr M01_L15
M01_L10
 
mov       ecx,r14d
movzx     ecx,byte ptr [rdi+rcx]
mov       r8,2C13C000428
mov       r8,[r8]
mov       rdx,301CA0F77F8
call      qword ptr [7FF9F5FE4810]; System.Number.g__FormatUInt32Slow|43_0(UInt32, System.String, System.IFormatProvider)
test      rax,rax
je        short M01_L14
lea       rdx,[rax+0C]
mov       r8d,[rax+8]
test      r8d,r8d
je        short M01_L14
mov       rcx,[r12+8]
mov       eax,[r12+18]
lea       r15d,[rax+r8]
cmp       r15d,[rcx+8]
ja        short M01_L13
cdqe
lea       rcx,[rcx+rax*2+10]
cmp       r8d,2
jg        short M01_L11
movzx     eax,word ptr [rdx]
mov       [rcx],ax
cmp       r8d,2
jne       short M01_L12
movzx     r8d,word ptr [rdx+2]
mov       [rcx+2],r8w
jmp       short M01_L12
M01_L11
 
movsxd    r8,r8d
add       r8,r8
call      qword ptr [7FF9F5E55B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
M01_L12
 
mov       [r12+18],r15d
jmp       short M01_L14
M01_L13
 
mov       rcx,r12
call      qword ptr [7FF9F60ACA98]; System.Text.StringBuilder.AppendWithExpansion(Char ByRef, Int32)
M01_L14
 
inc       r14d
cmp       r14d,ebx
jl        near ptr M01_L10
M01_L15
 
mov       rcx,r12
call      qword ptr [7FF9F60B8140]; System.Text.StringBuilder.ToString()
mov       [rbp-0B0],rax
mov       rcx,rsp
call      M01_L29
nop
mov       rax,[rbp-0B0]
add       rsp,0B8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L16
 
call      qword ptr [7FF9F63252C0]
mov       ecx,7D9
mov       rdx,7FF9F62A3C60
call      CORINFO_HELP_STRCNS
mov       r13,rax
mov       ecx,1446
mov       rdx,7FF9F6135A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,r13
call      qword ptr [7FF9F5DA6B08]; System.String.Concat(System.String, System.String)
mov       rsi,rax
mov       ecx,1
mov       rdx,7FF9F62A3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rsi
call      qword ptr [7FF9F5DA6B08]; System.String.Concat(System.String, System.String)
mov       r12,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63250B0]
mov       r8,rax
mov       rdx,r12
mov       rcx,rdi
call      qword ptr [7FF9F6036670]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L17
 
mov       rcx,rsi
mov       byte ptr [rbp-70],1
mov       byte ptr [rbp-6F],1
xor       r9d,r9d
mov       [rsp+20],r9d
mov       [rsp+28],r9d
movzx     r9d,word ptr [rbp-70]
mov       rdx,301CA0E2D10
mov       r8d,1
call      qword ptr [7FF9F62C62F8]; System.Text.Json.JsonSerializerOptions.GetTypeInfoInternal(System.Type, Boolean, System.Nullable`1, Boolean, Boolean)
mov       rdi,rax
lea       rcx,[rsi+18]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       rdx,rdi
jmp       near ptr M01_L02
M01_L18
 
call      qword ptr [7FF9F5DA43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M01_L19
 
mov       rcx,rbx
mov       rdx,rdi
call      qword ptr [7FF9F60850C8]; System.Text.UTF8Encoding+UTF8EncodingSealed.GetBytesForSmallInput(System.String)
mov       r14,rax
jmp       near ptr M01_L05
M01_L20
 
mov       ecx,1763
mov       rdx,7FF9F5C54000
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FF9F60366E8]
int       3
M01_L21
 
mov       rcx,rbx
mov       rdx,r14
mov       r8d,r15d
call      qword ptr [7FF9F5DAC8A0]
add       r13d,eax
jns       near ptr M01_L04
M01_L22
 
call      qword ptr [7FF9F5DAC7E0]
int       3
M01_L23
 
mov       ecx,6A61
mov       rdx,7FF9F62D0100
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FF9F60366E8]
int       3
M01_L24
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
call      qword ptr [7FF9F6A35938]
mov       rsi,rax
mov       ecx,4465
mov       rdx,7FF9F62D0100
call      CORINFO_HELP_STRCNS
mov       r8,rax
mov       rdx,rsi
mov       rcx,rbx
call      qword ptr [7FF9F5DAF750]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M01_L25
 
call      qword ptr [7FF9F621EE68]; System.Lazy`1[[System.__Canon, System.Private.CoreLib]].CreateValue()
mov       rcx,rax
jmp       near ptr M01_L06
M01_L26
 
mov       rcx,[rsi+18]
lea       rdx,[rbp-68]
cmp       [rcx],ecx
call      qword ptr [7FF9F658EF10]; System.Collections.Concurrent.ConcurrentQueue`1[[System.__Canon, System.Private.CoreLib]].TryDequeue(System.__Canon ByRef)
test      eax,eax
je        short M01_L27
add       rsi,2C
lock dec  dword ptr [rsi]
jmp       near ptr M01_L07
M01_L27
 
mov       rax,[rsi+8]
mov       rcx,[rax+8]
call      qword ptr [rax+18]
mov       r12,rax
jmp       near ptr M01_L08
M01_L28
 
mov       rcx,rsi
mov       rax,[rsi]
mov       rax,[rax+40]
call      qword ptr [rax+20]
mov       r12,rax
jmp       near ptr M01_L09
M01_L29
 
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,38
mov       rbp,[rcx+30]
mov       [rsp+30],rbp
lea       rbp,[rbp+0F0]
mov       rcx,2C13800CF28
mov       rcx,[rcx]
cmp       qword ptr [rcx+8],0
je        short M01_L30
call      qword ptr [7FF9F621EE68]; System.Lazy`1[[System.__Canon, System.Private.CoreLib]].CreateValue()
mov       rbx,rax
jmp       short M01_L31
M01_L30
 
mov       rbx,[rcx+18]
M01_L31
 
mov       rcx,offset MT_Microsoft.Extensions.ObjectPool.DefaultObjectPool`1[[System.Text.StringBuilder, System.Private.CoreLib]]
cmp       [rbx],rcx
jne       near ptr M01_L36
mov       rdi,[rbx+10]
mov       rcx,offset Microsoft.Extensions.ObjectPool.StringBuilderPooledObjectPolicy.Return(System.Text.StringBuilder)
cmp       [rdi+18],rcx
jne       short M01_L32
mov       r12,[rbp-0A8]
mov       rcx,[r12+8]
mov       ecx,[rcx+8]
add       ecx,[r12+1C]
mov       rdx,[rdi+8]
cmp       ecx,[rdx+0C]
jg        near ptr M01_L37
mov       rcx,r12
xor       edx,edx
call      qword ptr [7FF9F60AC1F8]; System.Text.StringBuilder.set_Length(Int32)
jmp       short M01_L33
M01_L32
 
mov       rdx,[rbp-0A8]
mov       rcx,[rdi+8]
call      qword ptr [rdi+18]
test      eax,eax
mov       r12,[rbp-0A8]
je        short M01_L37
M01_L33
 
cmp       qword ptr [rbx+20],0
jne       short M01_L34
lea       rcx,[rbx+20]
mov       rdx,r12
xor       r8d,r8d
call      System.Threading.Interlocked.CompareExchange(System.Object ByRef, System.Object, System.Object)
test      rax,rax
je        short M01_L37
M01_L34
 
lea       rcx,[rbx+2C]
mov       edx,1
lock xadd [rcx],edx
inc       edx
cmp       edx,[rbx+28]
jg        short M01_L35
mov       rcx,[rbx+18]
mov       rdx,r12
cmp       [rcx],ecx
call      qword ptr [7FF9F658EEE0]; System.Collections.Concurrent.ConcurrentQueue`1[[System.__Canon, System.Private.CoreLib]].Enqueue(System.__Canon)
jmp       short M01_L37
M01_L35
 
add       rbx,2C
lock dec  dword ptr [rbx]
jmp       short M01_L37
M01_L36
 
mov       r12,[rbp-0A8]
mov       rcx,rbx
mov       rdx,r12
mov       rax,[rbx]
mov       rax,[rax+40]
call      qword ptr [rax+28]
M01_L37
 
nop
add       rsp,38
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.ComputeSHA256Hash()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rcx,[rbx+298]
call      qword ptr [7FF9F62BF588]; DotNetTips.Spargine.Extensions.ObjectExtensions.ComputeSha256Hash(System.Object)
mov       [rsp+28],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.ObjectExtensions.ComputeSha256Hash(System.Object)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,0B8
lea       rbp,[rsp+0F0]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-0B0],xmm4
mov       rax,0FFFFFFFFFFFFFFA0
M01_L00
 
vmovdqa   xmmword ptr [rbp+rax-40],xmm4
vmovdqa   xmmword ptr [rbp+rax-30],xmm4
vmovdqa   xmmword ptr [rbp+rax-20],xmm4
add       rax,30
jne       short M01_L00
mov       [rbp-40],rax
mov       [rbp-0C0],rsp
test      rcx,rcx
je        near ptr M01_L16
mov       rax,1D7A0C009F0
mov       rbx,[rax]
mov       [rbp-40],rcx
mov       rcx,1D7A0C0EF18
mov       rsi,[rcx]
cmp       byte ptr [rsi+9E],0
jne       short M01_L01
mov       rcx,rsi
call      qword ptr [7FF9F62F6A48]; System.Text.Json.JsonSerializerOptions.ConfigureForJsonSerializer()
M01_L01
 
mov       rdx,[rsi+18]
test      rdx,rdx
je        near ptr M01_L17
M01_L02
 
mov       r8,rdx
test      r8,r8
je        short M01_L03
mov       rcx,offset MT_System.Text.Json.Serialization.Metadata.JsonTypeInfo`1[[System.Object, System.Private.CoreLib]]
cmp       [r8],rcx
jne       near ptr M01_L18
M01_L03
 
lea       rdx,[rbp-40]
mov       rcx,offset MD_System.Text.Json.JsonSerializer.WriteString[[System.Object, System.Private.CoreLib]](System.Object ByRef, System.Text.Json.Serialization.Metadata.JsonTypeInfo`1)
call      qword ptr [7FF9F677D200]; System.Text.Json.JsonSerializer.WriteString[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef, System.Text.Json.Serialization.Metadata.JsonTypeInfo`1)
mov       rdi,rax
test      rdi,rdi
je        near ptr M01_L20
cmp       dword ptr [rdi+8],20
jle       near ptr M01_L19
lea       r8,[rdi+0C]
mov       [rbp-48],r8
mov       r14,[rbp-48]
mov       r15d,[rdi+8]
lea       r8,[rbp-50]
lea       r9,[rbp-58]
mov       rcx,r14
mov       edx,r15d
call      qword ptr [7FF9F60BD140]; System.Text.Unicode.Utf16Utility.GetPointerToFirstInvalidChar(Char*, Int32, Int64 ByRef, Int32 ByRef)
sub       rax,r14
mov       r9,rax
shr       r9,3F
add       r9,rax
sar       r9,1
movsxd    r13,r9d
add       r13,[rbp-50]
cmp       r13,7FFFFFFF
ja        near ptr M01_L22
cmp       r9d,r15d
jne       near ptr M01_L21
M01_L04
 
xor       edx,edx
mov       [rbp-48],rdx
movsxd    rdx,r13d
mov       rcx,offset MT_System.Byte[]
call      CORINFO_HELP_NEWARR_1_VC
mov       r14,rax
mov       [rsp+20],r14
xor       r9d,r9d
mov       [rsp+28],r9d
mov       r9d,[rdi+8]
mov       rcx,rbx
mov       rdx,rdi
xor       r8d,r8d
call      qword ptr [7FF9F602A478]; System.Text.UTF8Encoding.GetBytes(System.String, Int32, Int32, Byte[], Int32)
M01_L05
 
test      r14,r14
je        near ptr M01_L23
lea       rsi,[r14+10]
mov       ebx,[r14+8]
mov       rcx,offset MT_System.Byte[]
mov       edx,20
call      CORINFO_HELP_NEWARR_1_VC
mov       r12,rax
lea       rdx,[r12+10]
mov       r8d,20
cmp       r8d,20
jl        near ptr M01_L24
xor       ecx,ecx
mov       [rbp-80],rsi
mov       [rbp-78],ebx
mov       [rbp-90],rcx
xor       ecx,ecx
mov       [rbp-88],ecx
mov       [rbp-0A0],rdx
mov       [rbp-98],r8d
lea       rdx,[rbp-60]
mov       [rsp+28],rdx
lea       rdx,[rbp-0A0]
mov       [rsp+20],rdx
lea       rdx,[rbp-80]
lea       r8,[rbp-90]
mov       rcx,21832969358
xor       r9d,r9d
call      qword ptr [7FF9F689F5D0]; System.Security.Cryptography.HashProviderDispenser+OneShotHashProvider.HashDataUsingPseudoHandle(System.String, System.ReadOnlySpan`1, System.ReadOnlySpan`1, Boolean, System.Span`1, Int32 ByRef)
add       r12,10
mov       ebx,20
mov       rcx,1D7A0C0EF20
mov       rcx,[rcx]
cmp       qword ptr [rcx+8],0
jne       near ptr M01_L25
mov       rcx,[rcx+18]
M01_L06
 
mov       rsi,rcx
mov       rcx,offset MT_Microsoft.Extensions.ObjectPool.DefaultObjectPool`1[[System.Text.StringBuilder, System.Private.CoreLib]]
cmp       [rsi],rcx
jne       near ptr M01_L28
mov       rcx,[rsi+20]
mov       [rbp-68],rcx
cmp       qword ptr [rbp-68],0
je        near ptr M01_L26
lea       rcx,[rsi+20]
mov       r8,[rbp-68]
xor       edx,edx
call      System.Threading.Interlocked.CompareExchange(System.Object ByRef, System.Object, System.Object)
cmp       rax,[rbp-68]
jne       near ptr M01_L26
M01_L07
 
mov       rdi,[rbp-68]
M01_L08
 
xor       ecx,ecx
mov       [rbp-68],rcx
M01_L09
 
cmp       [rdi],dil
mov       rcx,rdi
xor       edx,edx
call      qword ptr [7FF9F60DC1F8]; System.Text.StringBuilder.set_Length(Int32)
mov       [rbp-0A8],rdi
xor       r14d,r14d
test      ebx,ebx
jle       near ptr M01_L15
M01_L10
 
mov       ecx,r14d
movzx     ecx,byte ptr [r12+rcx]
mov       r8,1D7A0C00428
mov       r8,[r8]
mov       rdx,218329777F8
call      qword ptr [7FF9F6014810]; System.Number.g__FormatUInt32Slow|43_0(UInt32, System.String, System.IFormatProvider)
test      rax,rax
je        short M01_L14
lea       rdx,[rax+0C]
mov       r8d,[rax+8]
test      r8d,r8d
je        short M01_L14
mov       rcx,[rdi+8]
mov       eax,[rdi+18]
lea       esi,[rax+r8]
cmp       esi,[rcx+8]
ja        short M01_L13
cdqe
lea       rcx,[rcx+rax*2+10]
cmp       r8d,2
jg        short M01_L11
movzx     eax,word ptr [rdx]
mov       [rcx],ax
cmp       r8d,2
jne       short M01_L12
movzx     eax,word ptr [rdx+2]
mov       [rcx+2],ax
jmp       short M01_L12
M01_L11
 
movsxd    r8,r8d
add       r8,r8
call      qword ptr [7FF9F5E85B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
M01_L12
 
mov       [rdi+18],esi
jmp       short M01_L14
M01_L13
 
mov       rcx,rdi
call      qword ptr [7FF9F60DCA98]; System.Text.StringBuilder.AppendWithExpansion(Char ByRef, Int32)
M01_L14
 
inc       r14d
cmp       r14d,ebx
jl        near ptr M01_L10
M01_L15
 
mov       rcx,rdi
call      qword ptr [7FF9F60E8140]; System.Text.StringBuilder.ToString()
mov       [rbp-0B0],rax
mov       rcx,rsp
call      M01_L29
nop
mov       rax,[rbp-0B0]
add       rsp,0B8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L16
 
call      qword ptr [7FF9F63552C0]
mov       ecx,7D9
mov       rdx,7FF9F62D3C60
call      CORINFO_HELP_STRCNS
mov       r15,rax
mov       ecx,1446
mov       rdx,7FF9F6165A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,r15
call      qword ptr [7FF9F5DD6B08]; System.String.Concat(System.String, System.String)
mov       r13,rax
mov       ecx,1
mov       rdx,7FF9F62D3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,r13
call      qword ptr [7FF9F5DD6B08]; System.String.Concat(System.String, System.String)
mov       rsi,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
call      qword ptr [7FF9F63550B0]
mov       r8,rax
mov       rdx,rsi
mov       rcx,rbx
call      qword ptr [7FF9F6066670]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M01_L17
 
mov       rcx,rsi
mov       byte ptr [rbp-70],1
mov       byte ptr [rbp-6F],1
xor       r9d,r9d
mov       [rsp+20],r9d
mov       [rsp+28],r9d
movzx     r9d,word ptr [rbp-70]
mov       rdx,21832962D10
mov       r8d,1
call      qword ptr [7FF9F62F62F8]; System.Text.Json.JsonSerializerOptions.GetTypeInfoInternal(System.Type, Boolean, System.Nullable`1, Boolean, Boolean)
mov       r14,rax
lea       rcx,[rsi+18]
mov       rdx,r14
call      CORINFO_HELP_ASSIGN_REF
mov       rdx,r14
jmp       near ptr M01_L02
M01_L18
 
call      qword ptr [7FF9F5DD43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M01_L19
 
mov       rcx,rbx
mov       rdx,rdi
call      qword ptr [7FF9F60B50C8]; System.Text.UTF8Encoding+UTF8EncodingSealed.GetBytesForSmallInput(System.String)
mov       r14,rax
jmp       near ptr M01_L05
M01_L20
 
mov       ecx,1763
mov       rdx,7FF9F5C84000
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FF9F60666E8]
int       3
M01_L21
 
mov       rcx,rbx
mov       rdx,r14
mov       r8d,r15d
call      qword ptr [7FF9F5DDC8A0]
add       r13d,eax
jns       near ptr M01_L04
M01_L22
 
call      qword ptr [7FF9F5DDC7E0]
int       3
M01_L23
 
mov       ecx,6A61
mov       rdx,7FF9F6300100
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FF9F60666E8]
int       3
M01_L24
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
call      qword ptr [7FF9F6A65890]
mov       rbx,rax
mov       ecx,4465
mov       rdx,7FF9F6300100
call      CORINFO_HELP_STRCNS
mov       r8,rax
mov       rdx,rbx
mov       rcx,r12
call      qword ptr [7FF9F5DDF750]
mov       rcx,r12
call      CORINFO_HELP_THROW
M01_L25
 
call      qword ptr [7FF9F624EE68]; System.Lazy`1[[System.__Canon, System.Private.CoreLib]].CreateValue()
mov       rcx,rax
jmp       near ptr M01_L06
M01_L26
 
mov       rcx,[rsi+18]
lea       rdx,[rbp-68]
cmp       [rcx],ecx
call      qword ptr [7FF9F65BEF10]; System.Collections.Concurrent.ConcurrentQueue`1[[System.__Canon, System.Private.CoreLib]].TryDequeue(System.__Canon ByRef)
test      eax,eax
je        short M01_L27
add       rsi,2C
lock dec  dword ptr [rsi]
jmp       near ptr M01_L07
M01_L27
 
mov       rax,[rsi+8]
mov       rcx,[rax+8]
call      qword ptr [rax+18]
mov       rdi,rax
jmp       near ptr M01_L08
M01_L28
 
mov       rcx,rsi
mov       rax,[rsi]
mov       rax,[rax+40]
call      qword ptr [rax+20]
mov       rdi,rax
jmp       near ptr M01_L09
M01_L29
 
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,38
mov       rbp,[rcx+30]
mov       [rsp+30],rbp
lea       rbp,[rbp+0F0]
mov       rcx,1D7A0C0EF20
mov       rcx,[rcx]
cmp       qword ptr [rcx+8],0
je        short M01_L30
call      qword ptr [7FF9F624EE68]; System.Lazy`1[[System.__Canon, System.Private.CoreLib]].CreateValue()
mov       rdi,rax
jmp       short M01_L31
M01_L30
 
mov       rdi,[rcx+18]
M01_L31
 
mov       rcx,offset MT_Microsoft.Extensions.ObjectPool.DefaultObjectPool`1[[System.Text.StringBuilder, System.Private.CoreLib]]
cmp       [rdi],rcx
jne       near ptr M01_L36
mov       rax,[rdi+10]
mov       rcx,offset Microsoft.Extensions.ObjectPool.StringBuilderPooledObjectPolicy.Return(System.Text.StringBuilder)
cmp       [rax+18],rcx
jne       short M01_L32
mov       rbx,[rbp-0A8]
mov       rcx,[rbx+8]
mov       ecx,[rcx+8]
add       ecx,[rbx+1C]
mov       rdx,[rax+8]
cmp       ecx,[rdx+0C]
jg        near ptr M01_L37
mov       rcx,rbx
xor       edx,edx
call      qword ptr [7FF9F60DC1F8]; System.Text.StringBuilder.set_Length(Int32)
jmp       short M01_L33
M01_L32
 
mov       rdx,[rbp-0A8]
mov       rcx,[rax+8]
call      qword ptr [rax+18]
test      eax,eax
mov       rbx,[rbp-0A8]
je        short M01_L37
M01_L33
 
cmp       qword ptr [rdi+20],0
jne       short M01_L34
lea       rcx,[rdi+20]
mov       rdx,rbx
xor       r8d,r8d
call      System.Threading.Interlocked.CompareExchange(System.Object ByRef, System.Object, System.Object)
test      rax,rax
je        short M01_L37
M01_L34
 
lea       rcx,[rdi+2C]
mov       edx,1
lock xadd [rcx],edx
inc       edx
cmp       edx,[rdi+28]
jg        short M01_L35
mov       rcx,[rdi+18]
mov       rdx,rbx
cmp       [rcx],ecx
call      qword ptr [7FF9F65BEEE0]; System.Collections.Concurrent.ConcurrentQueue`1[[System.__Canon, System.Private.CoreLib]].Enqueue(System.__Canon)
jmp       short M01_L37
M01_L35
 
add       rdi,2C
lock dec  dword ptr [rdi]
jmp       short M01_L37
M01_L36
 
mov       rbx,[rbp-0A8]
mov       rcx,rdi
mov       rdx,rbx
mov       rax,[rdi]
mov       rax,[rax+40]
call      qword ptr [rax+28]
M01_L37
 
nop
add       rsp,38
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.ComputeSHA256Hash()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rcx,[rbx+298]
call      qword ptr [7FF9F62BF588]; DotNetTips.Spargine.Extensions.ObjectExtensions.ComputeSha256Hash(System.Object)
mov       [rsp+28],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.ObjectExtensions.ComputeSha256Hash(System.Object)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,0B8
lea       rbp,[rsp+0F0]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-0B0],xmm4
mov       rax,0FFFFFFFFFFFFFFA0
M01_L00
 
vmovdqa   xmmword ptr [rbp+rax-40],xmm4
vmovdqa   xmmword ptr [rbp+rax-30],xmm4
vmovdqa   xmmword ptr [rbp+rax-20],xmm4
add       rax,30
jne       short M01_L00
mov       [rbp-40],rax
mov       [rbp-0C0],rsp
test      rcx,rcx
je        near ptr M01_L16
mov       rax,1C8364009F0
mov       rbx,[rax]
mov       [rbp-40],rcx
mov       rcx,1C83240CF20
mov       rsi,[rcx]
cmp       byte ptr [rsi+9E],0
jne       short M01_L01
mov       rcx,rsi
call      qword ptr [7FF9F62F6A48]; System.Text.Json.JsonSerializerOptions.ConfigureForJsonSerializer()
M01_L01
 
mov       rdx,[rsi+18]
test      rdx,rdx
je        near ptr M01_L17
M01_L02
 
mov       r8,rdx
test      r8,r8
je        short M01_L03
mov       rcx,offset MT_System.Text.Json.Serialization.Metadata.JsonTypeInfo`1[[System.Object, System.Private.CoreLib]]
cmp       [r8],rcx
jne       near ptr M01_L18
M01_L03
 
lea       rdx,[rbp-40]
mov       rcx,offset MD_System.Text.Json.JsonSerializer.WriteString[[System.Object, System.Private.CoreLib]](System.Object ByRef, System.Text.Json.Serialization.Metadata.JsonTypeInfo`1)
call      qword ptr [7FF9F677D200]; System.Text.Json.JsonSerializer.WriteString[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef, System.Text.Json.Serialization.Metadata.JsonTypeInfo`1)
mov       rdi,rax
test      rdi,rdi
je        near ptr M01_L20
cmp       dword ptr [rdi+8],20
jle       near ptr M01_L19
lea       r8,[rdi+0C]
mov       [rbp-48],r8
mov       r14,[rbp-48]
mov       r15d,[rdi+8]
lea       r8,[rbp-50]
lea       r9,[rbp-58]
mov       rcx,r14
mov       edx,r15d
call      qword ptr [7FF9F60BD140]; System.Text.Unicode.Utf16Utility.GetPointerToFirstInvalidChar(Char*, Int32, Int64 ByRef, Int32 ByRef)
sub       rax,r14
mov       r9,rax
shr       r9,3F
add       r9,rax
sar       r9,1
movsxd    r13,r9d
add       r13,[rbp-50]
cmp       r13,7FFFFFFF
ja        near ptr M01_L22
cmp       r9d,r15d
jne       near ptr M01_L21
M01_L04
 
xor       edx,edx
mov       [rbp-48],rdx
movsxd    rdx,r13d
mov       rcx,offset MT_System.Byte[]
call      CORINFO_HELP_NEWARR_1_VC
mov       r14,rax
mov       [rsp+20],r14
xor       r9d,r9d
mov       [rsp+28],r9d
mov       r9d,[rdi+8]
mov       rcx,rbx
mov       rdx,rdi
xor       r8d,r8d
call      qword ptr [7FF9F602A478]; System.Text.UTF8Encoding.GetBytes(System.String, Int32, Int32, Byte[], Int32)
M01_L05
 
test      r14,r14
je        near ptr M01_L23
lea       rsi,[r14+10]
mov       ebx,[r14+8]
mov       rcx,offset MT_System.Byte[]
mov       edx,20
call      CORINFO_HELP_NEWARR_1_VC
mov       r12,rax
lea       rdx,[r12+10]
mov       r8d,20
cmp       r8d,20
jl        near ptr M01_L24
xor       ecx,ecx
mov       [rbp-80],rsi
mov       [rbp-78],ebx
mov       [rbp-90],rcx
xor       ecx,ecx
mov       [rbp-88],ecx
mov       [rbp-0A0],rdx
mov       [rbp-98],r8d
lea       rdx,[rbp-60]
mov       [rsp+28],rdx
lea       rdx,[rbp-0A0]
mov       [rsp+20],rdx
lea       rdx,[rbp-80]
lea       r8,[rbp-90]
mov       rcx,208C4439358
xor       r9d,r9d
call      qword ptr [7FF9F689EFB8]; System.Security.Cryptography.HashProviderDispenser+OneShotHashProvider.HashDataUsingPseudoHandle(System.String, System.ReadOnlySpan`1, System.ReadOnlySpan`1, Boolean, System.Span`1, Int32 ByRef)
add       r12,10
mov       ebx,20
mov       rcx,1C83240CF28
mov       rcx,[rcx]
cmp       qword ptr [rcx+8],0
jne       near ptr M01_L25
mov       rcx,[rcx+18]
M01_L06
 
mov       rsi,rcx
mov       rcx,offset MT_Microsoft.Extensions.ObjectPool.DefaultObjectPool`1[[System.Text.StringBuilder, System.Private.CoreLib]]
cmp       [rsi],rcx
jne       near ptr M01_L28
mov       rcx,[rsi+20]
mov       [rbp-68],rcx
cmp       qword ptr [rbp-68],0
je        near ptr M01_L26
lea       rcx,[rsi+20]
mov       r8,[rbp-68]
xor       edx,edx
call      System.Threading.Interlocked.CompareExchange(System.Object ByRef, System.Object, System.Object)
cmp       rax,[rbp-68]
jne       near ptr M01_L26
M01_L07
 
mov       rdi,[rbp-68]
M01_L08
 
xor       ecx,ecx
mov       [rbp-68],rcx
M01_L09
 
cmp       [rdi],dil
mov       rcx,rdi
xor       edx,edx
call      qword ptr [7FF9F60DC1F8]; System.Text.StringBuilder.set_Length(Int32)
mov       [rbp-0A8],rdi
xor       r14d,r14d
test      ebx,ebx
jle       near ptr M01_L15
M01_L10
 
mov       ecx,r14d
movzx     ecx,byte ptr [r12+rcx]
mov       r8,1C836400428
mov       r8,[r8]
mov       rdx,208C44477F8
call      qword ptr [7FF9F6014810]; System.Number.g__FormatUInt32Slow|43_0(UInt32, System.String, System.IFormatProvider)
test      rax,rax
je        short M01_L14
lea       rdx,[rax+0C]
mov       r8d,[rax+8]
test      r8d,r8d
je        short M01_L14
mov       rcx,[rdi+8]
mov       eax,[rdi+18]
lea       esi,[rax+r8]
cmp       esi,[rcx+8]
ja        short M01_L13
cdqe
lea       rcx,[rcx+rax*2+10]
cmp       r8d,2
jg        short M01_L11
movzx     eax,word ptr [rdx]
mov       [rcx],ax
cmp       r8d,2
jne       short M01_L12
movzx     eax,word ptr [rdx+2]
mov       [rcx+2],ax
jmp       short M01_L12
M01_L11
 
movsxd    r8,r8d
add       r8,r8
call      qword ptr [7FF9F5E85B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
M01_L12
 
mov       [rdi+18],esi
jmp       short M01_L14
M01_L13
 
mov       rcx,rdi
call      qword ptr [7FF9F60DCA98]; System.Text.StringBuilder.AppendWithExpansion(Char ByRef, Int32)
M01_L14
 
inc       r14d
cmp       r14d,ebx
jl        near ptr M01_L10
M01_L15
 
mov       rcx,rdi
call      qword ptr [7FF9F60E8140]; System.Text.StringBuilder.ToString()
mov       [rbp-0B0],rax
mov       rcx,rsp
call      M01_L29
nop
mov       rax,[rbp-0B0]
add       rsp,0B8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L16
 
call      qword ptr [7FF9F63552C0]
mov       ecx,7D9
mov       rdx,7FF9F62D3C60
call      CORINFO_HELP_STRCNS
mov       r15,rax
mov       ecx,1446
mov       rdx,7FF9F6165A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,r15
call      qword ptr [7FF9F5DD6B08]; System.String.Concat(System.String, System.String)
mov       r13,rax
mov       ecx,1
mov       rdx,7FF9F62D3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,r13
call      qword ptr [7FF9F5DD6B08]; System.String.Concat(System.String, System.String)
mov       rsi,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
call      qword ptr [7FF9F63550B0]
mov       r8,rax
mov       rdx,rsi
mov       rcx,rbx
call      qword ptr [7FF9F6066670]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M01_L17
 
mov       rcx,rsi
mov       byte ptr [rbp-70],1
mov       byte ptr [rbp-6F],1
xor       r9d,r9d
mov       [rsp+20],r9d
mov       [rsp+28],r9d
movzx     r9d,word ptr [rbp-70]
mov       rdx,208C4432D10
mov       r8d,1
call      qword ptr [7FF9F62F62F8]; System.Text.Json.JsonSerializerOptions.GetTypeInfoInternal(System.Type, Boolean, System.Nullable`1, Boolean, Boolean)
mov       r14,rax
lea       rcx,[rsi+18]
mov       rdx,r14
call      CORINFO_HELP_ASSIGN_REF
mov       rdx,r14
jmp       near ptr M01_L02
M01_L18
 
call      qword ptr [7FF9F5DD43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M01_L19
 
mov       rcx,rbx
mov       rdx,rdi
call      qword ptr [7FF9F60B50C8]; System.Text.UTF8Encoding+UTF8EncodingSealed.GetBytesForSmallInput(System.String)
mov       r14,rax
jmp       near ptr M01_L05
M01_L20
 
mov       ecx,1763
mov       rdx,7FF9F5C84000
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FF9F60666E8]
int       3
M01_L21
 
mov       rcx,rbx
mov       rdx,r14
mov       r8d,r15d
call      qword ptr [7FF9F5DDC8A0]
add       r13d,eax
jns       near ptr M01_L04
M01_L22
 
call      qword ptr [7FF9F5DDC7E0]
int       3
M01_L23
 
mov       ecx,6A61
mov       rdx,7FF9F6300100
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FF9F60666E8]
int       3
M01_L24
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
call      qword ptr [7FF9F6A65EC0]
mov       rbx,rax
mov       ecx,4465
mov       rdx,7FF9F6300100
call      CORINFO_HELP_STRCNS
mov       r8,rax
mov       rdx,rbx
mov       rcx,r12
call      qword ptr [7FF9F5DDF750]
mov       rcx,r12
call      CORINFO_HELP_THROW
M01_L25
 
call      qword ptr [7FF9F624EE68]; System.Lazy`1[[System.__Canon, System.Private.CoreLib]].CreateValue()
mov       rcx,rax
jmp       near ptr M01_L06
M01_L26
 
mov       rcx,[rsi+18]
lea       rdx,[rbp-68]
cmp       [rcx],ecx
call      qword ptr [7FF9F65BEF10]; System.Collections.Concurrent.ConcurrentQueue`1[[System.__Canon, System.Private.CoreLib]].TryDequeue(System.__Canon ByRef)
test      eax,eax
je        short M01_L27
add       rsi,2C
lock dec  dword ptr [rsi]
jmp       near ptr M01_L07
M01_L27
 
mov       rax,[rsi+8]
mov       rcx,[rax+8]
call      qword ptr [rax+18]
mov       rdi,rax
jmp       near ptr M01_L08
M01_L28
 
mov       rcx,rsi
mov       rax,[rsi]
mov       rax,[rax+40]
call      qword ptr [rax+20]
mov       rdi,rax
jmp       near ptr M01_L09
M01_L29
 
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,38
mov       rbp,[rcx+30]
mov       [rsp+30],rbp
lea       rbp,[rbp+0F0]
mov       rcx,1C83240CF28
mov       rcx,[rcx]
cmp       qword ptr [rcx+8],0
je        short M01_L30
call      qword ptr [7FF9F624EE68]; System.Lazy`1[[System.__Canon, System.Private.CoreLib]].CreateValue()
mov       rdi,rax
jmp       short M01_L31
M01_L30
 
mov       rdi,[rcx+18]
M01_L31
 
mov       rcx,offset MT_Microsoft.Extensions.ObjectPool.DefaultObjectPool`1[[System.Text.StringBuilder, System.Private.CoreLib]]
cmp       [rdi],rcx
jne       near ptr M01_L36
mov       rax,[rdi+10]
mov       rcx,offset Microsoft.Extensions.ObjectPool.StringBuilderPooledObjectPolicy.Return(System.Text.StringBuilder)
cmp       [rax+18],rcx
jne       short M01_L32
mov       rbx,[rbp-0A8]
mov       rcx,[rbx+8]
mov       ecx,[rcx+8]
add       ecx,[rbx+1C]
mov       rdx,[rax+8]
cmp       ecx,[rdx+0C]
jg        near ptr M01_L37
mov       rcx,rbx
xor       edx,edx
call      qword ptr [7FF9F60DC1F8]; System.Text.StringBuilder.set_Length(Int32)
jmp       short M01_L33
M01_L32
 
mov       rdx,[rbp-0A8]
mov       rcx,[rax+8]
call      qword ptr [rax+18]
test      eax,eax
mov       rbx,[rbp-0A8]
je        short M01_L37
M01_L33
 
cmp       qword ptr [rdi+20],0
jne       short M01_L34
lea       rcx,[rdi+20]
mov       rdx,rbx
xor       r8d,r8d
call      System.Threading.Interlocked.CompareExchange(System.Object ByRef, System.Object, System.Object)
test      rax,rax
je        short M01_L37
M01_L34
 
lea       rcx,[rdi+2C]
mov       edx,1
lock xadd [rcx],edx
inc       edx
cmp       edx,[rdi+28]
jg        short M01_L35
mov       rcx,[rdi+18]
mov       rdx,rbx
cmp       [rcx],ecx
call      qword ptr [7FF9F65BEEE0]; System.Collections.Concurrent.ConcurrentQueue`1[[System.__Canon, System.Private.CoreLib]].Enqueue(System.__Canon)
jmp       short M01_L37
M01_L35
 
add       rdi,2C
lock dec  dword ptr [rdi]
jmp       short M01_L37
M01_L36
 
mov       rbx,[rbp-0A8]
mov       rcx,rdi
mov       rdx,rbx
mov       rax,[rdi]
mov       rax,[rax+40]
call      qword ptr [rax+28]
M01_L37
 
nop
add       rsp,38
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.ContainsAny()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,[rbx+298]
mov       rcx,offset MT_System.Char[]
mov       edx,2
call      CORINFO_HELP_NEWARR_1_VC
mov       rdi,rax
mov       word ptr [rdi+10],61
mov       word ptr [rdi+12],7A
mov       rcx,offset MT_DotNetTips.Spargine.Extensions.EnumerableExtensions+<>c__DisplayClass7_0`1[[System.Char, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
lea       rcx,[rbp+8]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
test      rsi,rsi
je        short M00_L01
mov       rcx,[rbp+8]
mov       ecx,[rcx+8]
mov       rcx,offset MT_System.Func`2[[System.Char, System.Private.CoreLib],[System.Boolean, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
lea       rcx,[rdi+8]
mov       rdx,rbp
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,offset DotNetTips.Spargine.Extensions.EnumerableExtensions+<>c__DisplayClass7_0`1[[System.Char, System.Private.CoreLib]].b__0(Char)
mov       [rdi+18],rcx
mov       rcx,rsi
mov       rdx,rdi
call      qword ptr [7FF9F688C330]; DotNetTips.Spargine.Extensions.EnumerableExtensions.FastAny[[System.Char, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1, System.Func`2)
M00_L00
 
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L01
 
xor       eax,eax
jmp       short M00_L00
 
DotNetTips.Spargine.Extensions.EnumerableExtensions+<>c__DisplayClass7_0`1[[System.Char, System.Private.CoreLib]].b__0(Char)
mov       rcx,[rcx+8]
movzx     edx,dx
jmp       qword ptr [7FF9F688C420]; System.Linq.Enumerable.Contains[[System.Char, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1, Char)
 
DotNetTips.Spargine.Extensions.EnumerableExtensions.FastAny[[System.Char, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1, System.Func`2)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,38
lea       rbp,[rsp+60]
mov       [rbp-40],rsp
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L17
test      rbx,rbx
je        near ptr M02_L18
mov       rcx,offset MT_System.String
cmp       [rsi],rcx
jne       near ptr M02_L19
mov       rdi,offset MT_System.CharEnumerator
mov       rcx,rdi
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       dword ptr [rdi+10],0FFFFFFFF
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,rdi
M02_L00
 
mov       [rbp-30],rcx
test      rcx,rcx
je        near ptr M02_L07
mov       rdi,offset MT_System.CharEnumerator
cmp       [rcx],rdi
jne       near ptr M02_L07
mov       rdx,offset DotNetTips.Spargine.Extensions.EnumerableExtensions+<>c__DisplayClass7_0`1[[System.Char, System.Private.CoreLib]].b__0(Char)
cmp       [rbx+18],rdx
jne       near ptr M02_L07
jmp       short M02_L03
M02_L01
 
mov       r10,rcx
mov       r14d,[r10+10]
mov       r15,[r10+8]
mov       edx,[r15+8]
cmp       edx,r14d
jbe       near ptr M02_L12
mov       edx,r14d
movzx     edx,word ptr [r15+rdx*2+0C]
mov       r11,[rbx+8]
mov       r9,[r11+8]
mov       r11,r9
test      r11,r11
je        near ptr M02_L13
mov       rcx,r11
mov       r11,7FF9F5C810F0
call      qword ptr [r11]
M02_L02
 
test      eax,eax
je        near ptr M02_L15
M02_L03
 
mov       rcx,[rbp-30]
mov       rax,rcx
mov       r8d,[rax+10]
inc       r8d
mov       rdx,[rax+8]
mov       esi,[rdx+8]
cmp       r8d,esi
jge       short M02_L04
mov       [rax+10],r8d
jmp       short M02_L01
M02_L04
 
mov       [rax+10],esi
jmp       near ptr M02_L14
M02_L05
 
mov       r10,rcx
mov       r14d,[r10+10]
mov       r15,[r10+8]
mov       edx,[r15+8]
cmp       edx,r14d
jbe       near ptr M02_L12
mov       edx,r14d
movzx     edx,word ptr [r15+rdx*2+0C]
mov       r11,offset DotNetTips.Spargine.Extensions.EnumerableExtensions+<>c__DisplayClass7_0`1[[System.Char, System.Private.CoreLib]].b__0(Char)
cmp       [rbx+18],r11
jne       short M02_L10
mov       r11,[rbx+8]
mov       r9,[r11+8]
mov       r11,r9
test      r11,r11
je        short M02_L09
mov       rcx,r11
mov       r11,7FF9F5C810F0
call      qword ptr [r11]
M02_L06
 
test      eax,eax
je        near ptr M02_L15
M02_L07
 
mov       rcx,[rbp-30]
mov       rdi,offset MT_System.CharEnumerator
cmp       [rcx],rdi
jne       short M02_L11
mov       rax,rcx
mov       r8d,[rax+10]
inc       r8d
mov       rdx,[rax+8]
mov       esi,[rdx+8]
cmp       r8d,esi
jge       short M02_L08
mov       [rax+10],r8d
jmp       near ptr M02_L05
M02_L08
 
mov       [rax+10],esi
jmp       short M02_L14
M02_L09
 
mov       rcx,r9
xor       r8d,r8d
call      qword ptr [7FF9F6A24498]
jmp       short M02_L06
M02_L10
 
mov       rcx,[rbx+8]
call      qword ptr [rbx+18]
jmp       short M02_L06
M02_L11
 
mov       r11,7FF9F5C810D8
call      qword ptr [r11]
test      eax,eax
je        short M02_L14
mov       rcx,[rbp-30]
mov       r11,7FF9F5C810E0
call      qword ptr [r11]
mov       edx,eax
jmp       short M02_L10
M02_L12
 
mov       ecx,[r10+10]
call      qword ptr [7FF9F602EFD0]
int       3
M02_L13
 
mov       rcx,r9
xor       r8d,r8d
call      qword ptr [7FF9F6A24498]
jmp       near ptr M02_L02
M02_L14
 
mov       rcx,[rbp-30]
mov       rcx,rsp
call      M02_L22
jmp       near ptr M02_L21
M02_L15
 
mov       rcx,[rbp-30]
cmp       [rcx],rdi
jne       near ptr M02_L20
xor       eax,eax
mov       [rcx+8],rax
M02_L16
 
xor       eax,eax
add       rsp,38
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M02_L17
 
call      qword ptr [7FF9F63452C0]
mov       ecx,43
mov       rdx,7FF9F62C3C60
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1446
mov       rdx,7FF9F6155A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DC6B08]; System.String.Concat(System.String, System.String)
mov       rdi,rax
mov       ecx,1
mov       rdx,7FF9F62C3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F5DC6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63450B0]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FF9F6056670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L18
 
call      qword ptr [7FF9F63452C0]
mov       ecx,263
mov       rdx,7FF9F62C3C60
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1446
mov       rdx,7FF9F6155A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DC6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FF9F62C3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DC6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63450B0]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FF9F6056670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L19
 
mov       rcx,rsi
mov       r11,7FF9F5C810D0
call      qword ptr [r11]
mov       rcx,rax
jmp       near ptr M02_L00
M02_L20
 
mov       r11,7FF9F5C810E8
call      qword ptr [r11]
jmp       near ptr M02_L16
M02_L21
 
mov       eax,1
add       rsp,38
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M02_L22
 
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+60]
cmp       qword ptr [rbp-30],0
je        short M02_L24
mov       rdi,offset MT_System.CharEnumerator
mov       rcx,[rbp-30]
cmp       [rcx],rdi
jne       short M02_L23
xor       r11d,r11d
mov       [rcx+8],r11
jmp       short M02_L24
M02_L23
 
mov       r11,7FF9F5C810E8
call      qword ptr [r11]
M02_L24
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.ContainsAny()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,[rbx+298]
mov       rcx,offset MT_System.Char[]
mov       edx,2
call      CORINFO_HELP_NEWARR_1_VC
mov       rdi,rax
mov       word ptr [rdi+10],61
mov       word ptr [rdi+12],7A
mov       rcx,offset MT_DotNetTips.Spargine.Extensions.EnumerableExtensions+<>c__DisplayClass7_0`1[[System.Char, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
lea       rcx,[rbp+8]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
test      rsi,rsi
je        short M00_L01
mov       rcx,[rbp+8]
mov       ecx,[rcx+8]
mov       rcx,offset MT_System.Func`2[[System.Char, System.Private.CoreLib],[System.Boolean, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
lea       rcx,[rdi+8]
mov       rdx,rbp
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,offset DotNetTips.Spargine.Extensions.EnumerableExtensions+<>c__DisplayClass7_0`1[[System.Char, System.Private.CoreLib]].b__0(Char)
mov       [rdi+18],rcx
mov       rcx,rsi
mov       rdx,rdi
call      qword ptr [7FF9F6877E58]; DotNetTips.Spargine.Extensions.EnumerableExtensions.FastAny[[System.Char, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1, System.Func`2)
M00_L00
 
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L01
 
xor       eax,eax
jmp       short M00_L00
 
DotNetTips.Spargine.Extensions.EnumerableExtensions+<>c__DisplayClass7_0`1[[System.Char, System.Private.CoreLib]].b__0(Char)
mov       rcx,[rcx+8]
movzx     edx,dx
jmp       qword ptr [7FF9F6877F48]; System.Linq.Enumerable.Contains[[System.Char, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1, Char)
 
DotNetTips.Spargine.Extensions.EnumerableExtensions.FastAny[[System.Char, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1, System.Func`2)
push      rbp
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbx
sub       rsp,30
lea       rbp,[rsp+60]
mov       [rbp-40],rsp
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L20
test      rbx,rbx
je        near ptr M02_L21
mov       rcx,offset MT_System.String
cmp       [rsi],rcx
jne       near ptr M02_L22
mov       rdi,offset MT_System.CharEnumerator
mov       rcx,rdi
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       dword ptr [rdi+10],0FFFFFFFF
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,rdi
M02_L00
 
mov       [rbp-38],rcx
test      rcx,rcx
je        near ptr M02_L08
mov       rdi,[rcx]
mov       rdx,offset MT_System.CharEnumerator
mov       r14,rdx
cmp       rdi,r14
jne       near ptr M02_L08
mov       rdx,offset DotNetTips.Spargine.Extensions.EnumerableExtensions+<>c__DisplayClass7_0`1[[System.Char, System.Private.CoreLib]].b__0(Char)
cmp       [rbx+18],rdx
jne       near ptr M02_L08
jmp       short M02_L03
M02_L01
 
mov       r10,rcx
mov       r15d,[r10+10]
mov       r13,[r10+8]
mov       edx,[r13+8]
cmp       edx,r15d
jbe       near ptr M02_L14
mov       edx,r15d
movzx     edx,word ptr [r13+rdx*2+0C]
mov       r11,[rbx+8]
mov       r9,[r11+8]
mov       r11,r9
test      r11,r11
je        near ptr M02_L15
mov       rcx,r11
mov       r11,7FF9F5C710F0
call      qword ptr [r11]
M02_L02
 
test      eax,eax
je        near ptr M02_L18
M02_L03
 
mov       rcx,[rbp-38]
cmp       rdi,r14
jne       short M02_L05
mov       rax,rcx
mov       r8d,[rax+10]
inc       r8d
mov       rdx,[rax+8]
mov       esi,[rdx+8]
cmp       r8d,esi
jge       short M02_L04
mov       [rax+10],r8d
jmp       short M02_L01
M02_L04
 
mov       [rax+10],esi
jmp       near ptr M02_L17
M02_L05
 
mov       r11,7FF9F5C710D8
call      qword ptr [r11]
test      eax,eax
je        near ptr M02_L17
mov       rcx,[rbp-38]
mov       r11,7FF9F5C710E0
call      qword ptr [r11]
mov       edx,eax
jmp       near ptr M02_L16
M02_L06
 
mov       r10,rcx
mov       r15d,[r10+10]
mov       r13,[r10+8]
mov       edx,[r13+8]
cmp       edx,r15d
jbe       near ptr M02_L14
mov       edx,r15d
movzx     edx,word ptr [r13+rdx*2+0C]
mov       r11,offset DotNetTips.Spargine.Extensions.EnumerableExtensions+<>c__DisplayClass7_0`1[[System.Char, System.Private.CoreLib]].b__0(Char)
cmp       [rbx+18],r11
jne       short M02_L11
mov       r11,[rbx+8]
mov       r9,[r11+8]
mov       r11,r9
test      r11,r11
je        short M02_L12
mov       rcx,r11
mov       r11,7FF9F5C710F0
call      qword ptr [r11]
M02_L07
 
test      eax,eax
je        near ptr M02_L18
M02_L08
 
mov       rcx,[rbp-38]
mov       rdi,[rcx]
mov       r14,offset MT_System.CharEnumerator
cmp       rdi,r14
jne       short M02_L10
mov       rax,rcx
mov       r8d,[rax+10]
inc       r8d
mov       rdx,[rax+8]
mov       esi,[rdx+8]
cmp       r8d,esi
jge       short M02_L09
mov       [rax+10],r8d
jmp       near ptr M02_L06
M02_L09
 
mov       [rax+10],esi
jmp       short M02_L17
M02_L10
 
mov       r11,7FF9F5C710D8
call      qword ptr [r11]
test      eax,eax
jne       short M02_L13
jmp       short M02_L17
M02_L11
 
mov       rcx,[rbx+8]
call      qword ptr [rbx+18]
jmp       short M02_L07
M02_L12
 
mov       rcx,r9
xor       r8d,r8d
call      qword ptr [7FF9F6A06190]
jmp       short M02_L07
M02_L13
 
mov       rcx,[rbp-38]
mov       r11,7FF9F5C710E0
call      qword ptr [r11]
mov       edx,eax
jmp       short M02_L11
M02_L14
 
mov       ecx,[r10+10]
call      qword ptr [7FF9F601EFD0]
int       3
M02_L15
 
mov       rcx,r9
xor       r8d,r8d
call      qword ptr [7FF9F6A06190]
jmp       near ptr M02_L02
M02_L16
 
mov       rcx,[rbx+8]
call      qword ptr [rbx+18]
jmp       near ptr M02_L02
M02_L17
 
mov       rcx,[rbp-38]
mov       rcx,rsp
call      M02_L25
jmp       near ptr M02_L24
M02_L18
 
cmp       rdi,r14
jne       near ptr M02_L23
xor       eax,eax
mov       rcx,[rbp-38]
mov       [rcx+8],rax
M02_L19
 
xor       eax,eax
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L20
 
call      qword ptr [7FF9F63352C0]
mov       ecx,43
mov       rdx,7FF9F62B3C60
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1446
mov       rdx,7FF9F6145A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DB6B08]; System.String.Concat(System.String, System.String)
mov       rdi,rax
mov       ecx,1
mov       rdx,7FF9F62B3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F5DB6B08]; System.String.Concat(System.String, System.String)
mov       r14,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
call      qword ptr [7FF9F63350B0]
mov       r8,rax
mov       rdx,r14
mov       rcx,rbx
call      qword ptr [7FF9F6046670]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M02_L21
 
call      qword ptr [7FF9F63352C0]
mov       ecx,263
mov       rdx,7FF9F62B3C60
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1446
mov       rdx,7FF9F6145A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DB6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FF9F62B3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DB6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63350B0]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FF9F6046670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L22
 
mov       rcx,rsi
mov       r11,7FF9F5C710D0
call      qword ptr [r11]
mov       rcx,rax
jmp       near ptr M02_L00
M02_L23
 
mov       rcx,[rbp-38]
mov       r11,7FF9F5C710E8
call      qword ptr [r11]
jmp       near ptr M02_L19
M02_L24
 
mov       eax,1
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L25
 
push      rbp
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbx
sub       rsp,30
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+60]
cmp       qword ptr [rbp-38],0
je        short M02_L27
mov       rcx,[rbp-38]
mov       rdi,[rcx]
mov       r14,offset MT_System.CharEnumerator
cmp       rdi,r14
jne       short M02_L26
xor       r11d,r11d
mov       [rcx+8],r11
jmp       short M02_L27
M02_L26
 
mov       r11,7FF9F5C710E8
call      qword ptr [r11]
M02_L27
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.ContainsAny()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,[rbx+298]
mov       rcx,offset MT_System.Char[]
mov       edx,2
call      CORINFO_HELP_NEWARR_1_VC
mov       rdi,rax
mov       word ptr [rdi+10],61
mov       word ptr [rdi+12],7A
mov       rcx,offset MT_DotNetTips.Spargine.Extensions.EnumerableExtensions+<>c__DisplayClass7_0`1[[System.Char, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
lea       rcx,[rbp+8]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
test      rsi,rsi
je        short M00_L01
mov       rcx,[rbp+8]
mov       ecx,[rcx+8]
mov       rcx,offset MT_System.Func`2[[System.Char, System.Private.CoreLib],[System.Boolean, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
lea       rcx,[rdi+8]
mov       rdx,rbp
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,offset DotNetTips.Spargine.Extensions.EnumerableExtensions+<>c__DisplayClass7_0`1[[System.Char, System.Private.CoreLib]].b__0(Char)
mov       [rdi+18],rcx
mov       rcx,rsi
mov       rdx,rdi
call      qword ptr [7FF9F686C330]; DotNetTips.Spargine.Extensions.EnumerableExtensions.FastAny[[System.Char, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1, System.Func`2)
M00_L00
 
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L01
 
xor       eax,eax
jmp       short M00_L00
 
DotNetTips.Spargine.Extensions.EnumerableExtensions+<>c__DisplayClass7_0`1[[System.Char, System.Private.CoreLib]].b__0(Char)
mov       rcx,[rcx+8]
movzx     edx,dx
jmp       qword ptr [7FF9F686C420]; System.Linq.Enumerable.Contains[[System.Char, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1, Char)
 
DotNetTips.Spargine.Extensions.EnumerableExtensions.FastAny[[System.Char, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1, System.Func`2)
push      rbp
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbx
sub       rsp,30
lea       rbp,[rsp+60]
mov       [rbp-40],rsp
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L20
test      rbx,rbx
je        near ptr M02_L21
mov       rcx,offset MT_System.String
cmp       [rsi],rcx
jne       near ptr M02_L22
mov       rdi,offset MT_System.CharEnumerator
mov       rcx,rdi
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       dword ptr [rdi+10],0FFFFFFFF
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,rdi
M02_L00
 
mov       [rbp-38],rcx
test      rcx,rcx
je        near ptr M02_L08
mov       rdi,[rcx]
mov       rdx,offset MT_System.CharEnumerator
mov       r14,rdx
cmp       rdi,r14
jne       near ptr M02_L08
mov       rdx,offset DotNetTips.Spargine.Extensions.EnumerableExtensions+<>c__DisplayClass7_0`1[[System.Char, System.Private.CoreLib]].b__0(Char)
cmp       [rbx+18],rdx
jne       near ptr M02_L08
jmp       short M02_L03
M02_L01
 
mov       r10,rcx
mov       r15d,[r10+10]
mov       r13,[r10+8]
mov       edx,[r13+8]
cmp       edx,r15d
jbe       near ptr M02_L14
mov       edx,r15d
movzx     edx,word ptr [r13+rdx*2+0C]
mov       r11,[rbx+8]
mov       r9,[r11+8]
mov       r11,r9
test      r11,r11
je        near ptr M02_L15
mov       rcx,r11
mov       r11,7FF9F5C610F0
call      qword ptr [r11]
M02_L02
 
test      eax,eax
je        near ptr M02_L18
M02_L03
 
mov       rcx,[rbp-38]
cmp       rdi,r14
jne       short M02_L05
mov       rax,rcx
mov       r8d,[rax+10]
inc       r8d
mov       rdx,[rax+8]
mov       esi,[rdx+8]
cmp       r8d,esi
jge       short M02_L04
mov       [rax+10],r8d
jmp       short M02_L01
M02_L04
 
mov       [rax+10],esi
jmp       near ptr M02_L17
M02_L05
 
mov       r11,7FF9F5C610D8
call      qword ptr [r11]
test      eax,eax
je        near ptr M02_L17
mov       rcx,[rbp-38]
mov       r11,7FF9F5C610E0
call      qword ptr [r11]
mov       edx,eax
jmp       near ptr M02_L16
M02_L06
 
mov       r10,rcx
mov       r15d,[r10+10]
mov       r13,[r10+8]
mov       edx,[r13+8]
cmp       edx,r15d
jbe       near ptr M02_L14
mov       edx,r15d
movzx     edx,word ptr [r13+rdx*2+0C]
mov       r11,offset DotNetTips.Spargine.Extensions.EnumerableExtensions+<>c__DisplayClass7_0`1[[System.Char, System.Private.CoreLib]].b__0(Char)
cmp       [rbx+18],r11
jne       short M02_L11
mov       r11,[rbx+8]
mov       r9,[r11+8]
mov       r11,r9
test      r11,r11
je        short M02_L12
mov       rcx,r11
mov       r11,7FF9F5C610F0
call      qword ptr [r11]
M02_L07
 
test      eax,eax
je        near ptr M02_L18
M02_L08
 
mov       rcx,[rbp-38]
mov       rdi,[rcx]
mov       r14,offset MT_System.CharEnumerator
cmp       rdi,r14
jne       short M02_L10
mov       rax,rcx
mov       r8d,[rax+10]
inc       r8d
mov       rdx,[rax+8]
mov       esi,[rdx+8]
cmp       r8d,esi
jge       short M02_L09
mov       [rax+10],r8d
jmp       near ptr M02_L06
M02_L09
 
mov       [rax+10],esi
jmp       short M02_L17
M02_L10
 
mov       r11,7FF9F5C610D8
call      qword ptr [r11]
test      eax,eax
jne       short M02_L13
jmp       short M02_L17
M02_L11
 
mov       rcx,[rbx+8]
call      qword ptr [rbx+18]
jmp       short M02_L07
M02_L12
 
mov       rcx,r9
xor       r8d,r8d
call      qword ptr [7FF9F69F6D30]
jmp       short M02_L07
M02_L13
 
mov       rcx,[rbp-38]
mov       r11,7FF9F5C610E0
call      qword ptr [r11]
mov       edx,eax
jmp       short M02_L11
M02_L14
 
mov       ecx,[r10+10]
call      qword ptr [7FF9F600EFD0]
int       3
M02_L15
 
mov       rcx,r9
xor       r8d,r8d
call      qword ptr [7FF9F69F6D30]
jmp       near ptr M02_L02
M02_L16
 
mov       rcx,[rbx+8]
call      qword ptr [rbx+18]
jmp       near ptr M02_L02
M02_L17
 
mov       rcx,[rbp-38]
mov       rcx,rsp
call      M02_L25
jmp       near ptr M02_L24
M02_L18
 
cmp       rdi,r14
jne       near ptr M02_L23
xor       eax,eax
mov       rcx,[rbp-38]
mov       [rcx+8],rax
M02_L19
 
xor       eax,eax
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L20
 
call      qword ptr [7FF9F63252C0]
mov       ecx,43
mov       rdx,7FF9F62A3C60
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1446
mov       rdx,7FF9F6135A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DA6B08]; System.String.Concat(System.String, System.String)
mov       rdi,rax
mov       ecx,1
mov       rdx,7FF9F62A3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F5DA6B08]; System.String.Concat(System.String, System.String)
mov       r14,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
call      qword ptr [7FF9F63250B0]
mov       r8,rax
mov       rdx,r14
mov       rcx,rbx
call      qword ptr [7FF9F6036670]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M02_L21
 
call      qword ptr [7FF9F63252C0]
mov       ecx,263
mov       rdx,7FF9F62A3C60
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1446
mov       rdx,7FF9F6135A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DA6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FF9F62A3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DA6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63250B0]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FF9F6036670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L22
 
mov       rcx,rsi
mov       r11,7FF9F5C610D0
call      qword ptr [r11]
mov       rcx,rax
jmp       near ptr M02_L00
M02_L23
 
mov       rcx,[rbp-38]
mov       r11,7FF9F5C610E8
call      qword ptr [r11]
jmp       near ptr M02_L19
M02_L24
 
mov       eax,1
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L25
 
push      rbp
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbx
sub       rsp,30
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+60]
cmp       qword ptr [rbp-38],0
je        short M02_L27
mov       rcx,[rbp-38]
mov       rdi,[rcx]
mov       r14,offset MT_System.CharEnumerator
cmp       rdi,r14
jne       short M02_L26
xor       r11d,r11d
mov       [rcx+8],r11
jmp       short M02_L27
M02_L26
 
mov       r11,7FF9F5C610E8
call      qword ptr [r11]
M02_L27
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.ContainsAny()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,[rbx+298]
mov       rcx,offset MT_System.Char[]
mov       edx,2
call      CORINFO_HELP_NEWARR_1_VC
mov       rdi,rax
mov       word ptr [rdi+10],61
mov       word ptr [rdi+12],7A
mov       rcx,offset MT_DotNetTips.Spargine.Extensions.EnumerableExtensions+<>c__DisplayClass7_0`1[[System.Char, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
lea       rcx,[rbp+8]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
test      rsi,rsi
je        short M00_L01
mov       rcx,[rbp+8]
mov       ecx,[rcx+8]
mov       rcx,offset MT_System.Func`2[[System.Char, System.Private.CoreLib],[System.Boolean, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
lea       rcx,[rdi+8]
mov       rdx,rbp
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,offset DotNetTips.Spargine.Extensions.EnumerableExtensions+<>c__DisplayClass7_0`1[[System.Char, System.Private.CoreLib]].b__0(Char)
mov       [rdi+18],rcx
mov       rcx,rsi
mov       rdx,rdi
call      qword ptr [7FF9F6877E58]; DotNetTips.Spargine.Extensions.EnumerableExtensions.FastAny[[System.Char, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1, System.Func`2)
M00_L00
 
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L01
 
xor       eax,eax
jmp       short M00_L00
 
DotNetTips.Spargine.Extensions.EnumerableExtensions+<>c__DisplayClass7_0`1[[System.Char, System.Private.CoreLib]].b__0(Char)
mov       rcx,[rcx+8]
movzx     edx,dx
jmp       qword ptr [7FF9F6877F48]; System.Linq.Enumerable.Contains[[System.Char, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1, Char)
 
DotNetTips.Spargine.Extensions.EnumerableExtensions.FastAny[[System.Char, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1, System.Func`2)
push      rbp
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbx
sub       rsp,30
lea       rbp,[rsp+60]
mov       [rbp-40],rsp
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L20
test      rbx,rbx
je        near ptr M02_L21
mov       rcx,offset MT_System.String
cmp       [rsi],rcx
jne       near ptr M02_L22
mov       rdi,offset MT_System.CharEnumerator
mov       rcx,rdi
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       dword ptr [rdi+10],0FFFFFFFF
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,rdi
M02_L00
 
mov       [rbp-38],rcx
test      rcx,rcx
je        near ptr M02_L08
mov       rdi,[rcx]
mov       rdx,offset MT_System.CharEnumerator
mov       r14,rdx
cmp       rdi,r14
jne       near ptr M02_L08
mov       rdx,offset DotNetTips.Spargine.Extensions.EnumerableExtensions+<>c__DisplayClass7_0`1[[System.Char, System.Private.CoreLib]].b__0(Char)
cmp       [rbx+18],rdx
jne       near ptr M02_L08
jmp       short M02_L03
M02_L01
 
mov       r10,rcx
mov       r15d,[r10+10]
mov       r13,[r10+8]
mov       edx,[r13+8]
cmp       edx,r15d
jbe       near ptr M02_L14
mov       edx,r15d
movzx     edx,word ptr [r13+rdx*2+0C]
mov       r11,[rbx+8]
mov       r9,[r11+8]
mov       r11,r9
test      r11,r11
je        near ptr M02_L15
mov       rcx,r11
mov       r11,7FF9F5C710F0
call      qword ptr [r11]
M02_L02
 
test      eax,eax
je        near ptr M02_L18
M02_L03
 
mov       rcx,[rbp-38]
cmp       rdi,r14
jne       short M02_L05
mov       rax,rcx
mov       r8d,[rax+10]
inc       r8d
mov       rdx,[rax+8]
mov       esi,[rdx+8]
cmp       r8d,esi
jge       short M02_L04
mov       [rax+10],r8d
jmp       short M02_L01
M02_L04
 
mov       [rax+10],esi
jmp       near ptr M02_L17
M02_L05
 
mov       r11,7FF9F5C710D8
call      qword ptr [r11]
test      eax,eax
je        near ptr M02_L17
mov       rcx,[rbp-38]
mov       r11,7FF9F5C710E0
call      qword ptr [r11]
mov       edx,eax
jmp       near ptr M02_L16
M02_L06
 
mov       r10,rcx
mov       r15d,[r10+10]
mov       r13,[r10+8]
mov       edx,[r13+8]
cmp       edx,r15d
jbe       near ptr M02_L14
mov       edx,r15d
movzx     edx,word ptr [r13+rdx*2+0C]
mov       r11,offset DotNetTips.Spargine.Extensions.EnumerableExtensions+<>c__DisplayClass7_0`1[[System.Char, System.Private.CoreLib]].b__0(Char)
cmp       [rbx+18],r11
jne       short M02_L11
mov       r11,[rbx+8]
mov       r9,[r11+8]
mov       r11,r9
test      r11,r11
je        short M02_L12
mov       rcx,r11
mov       r11,7FF9F5C710F0
call      qword ptr [r11]
M02_L07
 
test      eax,eax
je        near ptr M02_L18
M02_L08
 
mov       rcx,[rbp-38]
mov       rdi,[rcx]
mov       r14,offset MT_System.CharEnumerator
cmp       rdi,r14
jne       short M02_L10
mov       rax,rcx
mov       r8d,[rax+10]
inc       r8d
mov       rdx,[rax+8]
mov       esi,[rdx+8]
cmp       r8d,esi
jge       short M02_L09
mov       [rax+10],r8d
jmp       near ptr M02_L06
M02_L09
 
mov       [rax+10],esi
jmp       short M02_L17
M02_L10
 
mov       r11,7FF9F5C710D8
call      qword ptr [r11]
test      eax,eax
jne       short M02_L13
jmp       short M02_L17
M02_L11
 
mov       rcx,[rbx+8]
call      qword ptr [rbx+18]
jmp       short M02_L07
M02_L12
 
mov       rcx,r9
xor       r8d,r8d
call      qword ptr [7FF9F6A15E18]
jmp       short M02_L07
M02_L13
 
mov       rcx,[rbp-38]
mov       r11,7FF9F5C710E0
call      qword ptr [r11]
mov       edx,eax
jmp       short M02_L11
M02_L14
 
mov       ecx,[r10+10]
call      qword ptr [7FF9F601EFD0]
int       3
M02_L15
 
mov       rcx,r9
xor       r8d,r8d
call      qword ptr [7FF9F6A15E18]
jmp       near ptr M02_L02
M02_L16
 
mov       rcx,[rbx+8]
call      qword ptr [rbx+18]
jmp       near ptr M02_L02
M02_L17
 
mov       rcx,[rbp-38]
mov       rcx,rsp
call      M02_L25
jmp       near ptr M02_L24
M02_L18
 
cmp       rdi,r14
jne       near ptr M02_L23
xor       eax,eax
mov       rcx,[rbp-38]
mov       [rcx+8],rax
M02_L19
 
xor       eax,eax
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L20
 
call      qword ptr [7FF9F63352C0]
mov       ecx,43
mov       rdx,7FF9F62B3C60
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1446
mov       rdx,7FF9F6145A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DB6B08]; System.String.Concat(System.String, System.String)
mov       rdi,rax
mov       ecx,1
mov       rdx,7FF9F62B3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F5DB6B08]; System.String.Concat(System.String, System.String)
mov       r14,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
call      qword ptr [7FF9F63350B0]
mov       r8,rax
mov       rdx,r14
mov       rcx,rbx
call      qword ptr [7FF9F6046670]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M02_L21
 
call      qword ptr [7FF9F63352C0]
mov       ecx,263
mov       rdx,7FF9F62B3C60
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1446
mov       rdx,7FF9F6145A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DB6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FF9F62B3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DB6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63350B0]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FF9F6046670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L22
 
mov       rcx,rsi
mov       r11,7FF9F5C710D0
call      qword ptr [r11]
mov       rcx,rax
jmp       near ptr M02_L00
M02_L23
 
mov       rcx,[rbp-38]
mov       r11,7FF9F5C710E8
call      qword ptr [r11]
jmp       near ptr M02_L19
M02_L24
 
mov       eax,1
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L25
 
push      rbp
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbx
sub       rsp,30
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+60]
cmp       qword ptr [rbp-38],0
je        short M02_L27
mov       rcx,[rbp-38]
mov       rdi,[rcx]
mov       r14,offset MT_System.CharEnumerator
cmp       rdi,r14
jne       short M02_L26
xor       r11d,r11d
mov       [rcx+8],r11
jmp       short M02_L27
M02_L26
 
mov       r11,7FF9F5C710E8
call      qword ptr [r11]
M02_L27
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.ContainsAny()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,[rbx+298]
mov       rcx,offset MT_System.Char[]
mov       edx,2
call      CORINFO_HELP_NEWARR_1_VC
mov       rdi,rax
mov       word ptr [rdi+10],61
mov       word ptr [rdi+12],7A
mov       rcx,offset MT_DotNetTips.Spargine.Extensions.EnumerableExtensions+<>c__DisplayClass7_0`1[[System.Char, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
lea       rcx,[rbp+8]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
test      rsi,rsi
je        short M00_L01
mov       rcx,[rbp+8]
mov       ecx,[rcx+8]
mov       rcx,offset MT_System.Func`2[[System.Char, System.Private.CoreLib],[System.Boolean, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
lea       rcx,[rdi+8]
mov       rdx,rbp
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,offset DotNetTips.Spargine.Extensions.EnumerableExtensions+<>c__DisplayClass7_0`1[[System.Char, System.Private.CoreLib]].b__0(Char)
mov       [rdi+18],rcx
mov       rcx,rsi
mov       rdx,rdi
call      qword ptr [7FF9F687DCE0]; DotNetTips.Spargine.Extensions.EnumerableExtensions.FastAny[[System.Char, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1, System.Func`2)
M00_L00
 
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L01
 
xor       eax,eax
jmp       short M00_L00
 
DotNetTips.Spargine.Extensions.EnumerableExtensions+<>c__DisplayClass7_0`1[[System.Char, System.Private.CoreLib]].b__0(Char)
mov       rcx,[rcx+8]
movzx     edx,dx
jmp       qword ptr [7FF9F687DDD0]; System.Linq.Enumerable.Contains[[System.Char, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1, Char)
 
DotNetTips.Spargine.Extensions.EnumerableExtensions.FastAny[[System.Char, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1, System.Func`2)
push      rbp
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbx
sub       rsp,30
lea       rbp,[rsp+60]
mov       [rbp-40],rsp
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L20
test      rbx,rbx
je        near ptr M02_L21
mov       rcx,offset MT_System.String
cmp       [rsi],rcx
jne       near ptr M02_L22
mov       rdi,offset MT_System.CharEnumerator
mov       rcx,rdi
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       dword ptr [rdi+10],0FFFFFFFF
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,rdi
M02_L00
 
mov       [rbp-38],rcx
test      rcx,rcx
je        near ptr M02_L08
mov       rdi,[rcx]
mov       rdx,offset MT_System.CharEnumerator
mov       r14,rdx
cmp       rdi,r14
jne       near ptr M02_L08
mov       rdx,offset DotNetTips.Spargine.Extensions.EnumerableExtensions+<>c__DisplayClass7_0`1[[System.Char, System.Private.CoreLib]].b__0(Char)
cmp       [rbx+18],rdx
jne       near ptr M02_L08
jmp       short M02_L03
M02_L01
 
mov       r10,rcx
mov       r15d,[r10+10]
mov       r13,[r10+8]
mov       edx,[r13+8]
cmp       edx,r15d
jbe       near ptr M02_L14
mov       edx,r15d
movzx     edx,word ptr [r13+rdx*2+0C]
mov       r11,[rbx+8]
mov       r9,[r11+8]
mov       r11,r9
test      r11,r11
je        near ptr M02_L15
mov       rcx,r11
mov       r11,7FF9F5C710F0
call      qword ptr [r11]
M02_L02
 
test      eax,eax
je        near ptr M02_L18
M02_L03
 
mov       rcx,[rbp-38]
cmp       rdi,r14
jne       short M02_L05
mov       rax,rcx
mov       r8d,[rax+10]
inc       r8d
mov       rdx,[rax+8]
mov       esi,[rdx+8]
cmp       r8d,esi
jge       short M02_L04
mov       [rax+10],r8d
jmp       short M02_L01
M02_L04
 
mov       [rax+10],esi
jmp       near ptr M02_L17
M02_L05
 
mov       r11,7FF9F5C710D8
call      qword ptr [r11]
test      eax,eax
je        near ptr M02_L17
mov       rcx,[rbp-38]
mov       r11,7FF9F5C710E0
call      qword ptr [r11]
mov       edx,eax
jmp       near ptr M02_L16
M02_L06
 
mov       r10,rcx
mov       r15d,[r10+10]
mov       r13,[r10+8]
mov       edx,[r13+8]
cmp       edx,r15d
jbe       near ptr M02_L14
mov       edx,r15d
movzx     edx,word ptr [r13+rdx*2+0C]
mov       r11,offset DotNetTips.Spargine.Extensions.EnumerableExtensions+<>c__DisplayClass7_0`1[[System.Char, System.Private.CoreLib]].b__0(Char)
cmp       [rbx+18],r11
jne       short M02_L11
mov       r11,[rbx+8]
mov       r9,[r11+8]
mov       r11,r9
test      r11,r11
je        short M02_L12
mov       rcx,r11
mov       r11,7FF9F5C710F0
call      qword ptr [r11]
M02_L07
 
test      eax,eax
je        near ptr M02_L18
M02_L08
 
mov       rcx,[rbp-38]
mov       rdi,[rcx]
mov       r14,offset MT_System.CharEnumerator
cmp       rdi,r14
jne       short M02_L10
mov       rax,rcx
mov       r8d,[rax+10]
inc       r8d
mov       rdx,[rax+8]
mov       esi,[rdx+8]
cmp       r8d,esi
jge       short M02_L09
mov       [rax+10],r8d
jmp       near ptr M02_L06
M02_L09
 
mov       [rax+10],esi
jmp       short M02_L17
M02_L10
 
mov       r11,7FF9F5C710D8
call      qword ptr [r11]
test      eax,eax
jne       short M02_L13
jmp       short M02_L17
M02_L11
 
mov       rcx,[rbx+8]
call      qword ptr [rbx+18]
jmp       short M02_L07
M02_L12
 
mov       rcx,r9
xor       r8d,r8d
call      qword ptr [7FF9F6A076F0]
jmp       short M02_L07
M02_L13
 
mov       rcx,[rbp-38]
mov       r11,7FF9F5C710E0
call      qword ptr [r11]
mov       edx,eax
jmp       short M02_L11
M02_L14
 
mov       ecx,[r10+10]
call      qword ptr [7FF9F601EFD0]
int       3
M02_L15
 
mov       rcx,r9
xor       r8d,r8d
call      qword ptr [7FF9F6A076F0]
jmp       near ptr M02_L02
M02_L16
 
mov       rcx,[rbx+8]
call      qword ptr [rbx+18]
jmp       near ptr M02_L02
M02_L17
 
mov       rcx,[rbp-38]
mov       rcx,rsp
call      M02_L25
jmp       near ptr M02_L24
M02_L18
 
cmp       rdi,r14
jne       near ptr M02_L23
xor       eax,eax
mov       rcx,[rbp-38]
mov       [rcx+8],rax
M02_L19
 
xor       eax,eax
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L20
 
call      qword ptr [7FF9F63352C0]
mov       ecx,43
mov       rdx,7FF9F62B3C60
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1446
mov       rdx,7FF9F6145A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DB6B08]; System.String.Concat(System.String, System.String)
mov       rdi,rax
mov       ecx,1
mov       rdx,7FF9F62B3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F5DB6B08]; System.String.Concat(System.String, System.String)
mov       r14,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
call      qword ptr [7FF9F63350B0]
mov       r8,rax
mov       rdx,r14
mov       rcx,rbx
call      qword ptr [7FF9F6046670]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M02_L21
 
call      qword ptr [7FF9F63352C0]
mov       ecx,263
mov       rdx,7FF9F62B3C60
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1446
mov       rdx,7FF9F6145A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DB6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FF9F62B3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DB6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63350B0]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FF9F6046670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L22
 
mov       rcx,rsi
mov       r11,7FF9F5C710D0
call      qword ptr [r11]
mov       rcx,rax
jmp       near ptr M02_L00
M02_L23
 
mov       rcx,[rbp-38]
mov       r11,7FF9F5C710E8
call      qword ptr [r11]
jmp       near ptr M02_L19
M02_L24
 
mov       eax,1
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L25
 
push      rbp
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbx
sub       rsp,30
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+60]
cmp       qword ptr [rbp-38],0
je        short M02_L27
mov       rcx,[rbp-38]
mov       rdi,[rcx]
mov       r14,offset MT_System.CharEnumerator
cmp       rdi,r14
jne       short M02_L26
xor       r11d,r11d
mov       [rcx+8],r11
jmp       short M02_L27
M02_L26
 
mov       r11,7FF9F5C710E8
call      qword ptr [r11]
M02_L27
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.ContainsAny()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,[rbx+298]
mov       rcx,offset MT_System.Char[]
mov       edx,2
call      CORINFO_HELP_NEWARR_1_VC
mov       rdi,rax
mov       word ptr [rdi+10],61
mov       word ptr [rdi+12],7A
mov       rcx,offset MT_DotNetTips.Spargine.Extensions.EnumerableExtensions+<>c__DisplayClass7_0`1[[System.Char, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
lea       rcx,[rbp+8]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
test      rsi,rsi
je        short M00_L01
mov       rcx,[rbp+8]
mov       ecx,[rcx+8]
mov       rcx,offset MT_System.Func`2[[System.Char, System.Private.CoreLib],[System.Boolean, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
lea       rcx,[rdi+8]
mov       rdx,rbp
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,offset DotNetTips.Spargine.Extensions.EnumerableExtensions+<>c__DisplayClass7_0`1[[System.Char, System.Private.CoreLib]].b__0(Char)
mov       [rdi+18],rcx
mov       rcx,rsi
mov       rdx,rdi
call      qword ptr [7FF9F686DCE0]; DotNetTips.Spargine.Extensions.EnumerableExtensions.FastAny[[System.Char, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1, System.Func`2)
M00_L00
 
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L01
 
xor       eax,eax
jmp       short M00_L00
 
DotNetTips.Spargine.Extensions.EnumerableExtensions+<>c__DisplayClass7_0`1[[System.Char, System.Private.CoreLib]].b__0(Char)
mov       rcx,[rcx+8]
movzx     edx,dx
jmp       qword ptr [7FF9F686DDD0]; System.Linq.Enumerable.Contains[[System.Char, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1, Char)
 
DotNetTips.Spargine.Extensions.EnumerableExtensions.FastAny[[System.Char, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1, System.Func`2)
push      rbp
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbx
sub       rsp,30
lea       rbp,[rsp+60]
mov       [rbp-40],rsp
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L20
test      rbx,rbx
je        near ptr M02_L21
mov       rcx,offset MT_System.String
cmp       [rsi],rcx
jne       near ptr M02_L22
mov       rdi,offset MT_System.CharEnumerator
mov       rcx,rdi
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       dword ptr [rdi+10],0FFFFFFFF
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,rdi
M02_L00
 
mov       [rbp-38],rcx
test      rcx,rcx
je        near ptr M02_L08
mov       rdi,[rcx]
mov       rdx,offset MT_System.CharEnumerator
mov       r14,rdx
cmp       rdi,r14
jne       near ptr M02_L08
mov       rdx,offset DotNetTips.Spargine.Extensions.EnumerableExtensions+<>c__DisplayClass7_0`1[[System.Char, System.Private.CoreLib]].b__0(Char)
cmp       [rbx+18],rdx
jne       near ptr M02_L08
jmp       short M02_L03
M02_L01
 
mov       r10,rcx
mov       r15d,[r10+10]
mov       r13,[r10+8]
mov       edx,[r13+8]
cmp       edx,r15d
jbe       near ptr M02_L14
mov       edx,r15d
movzx     edx,word ptr [r13+rdx*2+0C]
mov       r11,[rbx+8]
mov       r9,[r11+8]
mov       r11,r9
test      r11,r11
je        near ptr M02_L15
mov       rcx,r11
mov       r11,7FF9F5C610F0
call      qword ptr [r11]
M02_L02
 
test      eax,eax
je        near ptr M02_L18
M02_L03
 
mov       rcx,[rbp-38]
cmp       rdi,r14
jne       short M02_L05
mov       rax,rcx
mov       r8d,[rax+10]
inc       r8d
mov       rdx,[rax+8]
mov       esi,[rdx+8]
cmp       r8d,esi
jge       short M02_L04
mov       [rax+10],r8d
jmp       short M02_L01
M02_L04
 
mov       [rax+10],esi
jmp       near ptr M02_L17
M02_L05
 
mov       r11,7FF9F5C610D8
call      qword ptr [r11]
test      eax,eax
je        near ptr M02_L17
mov       rcx,[rbp-38]
mov       r11,7FF9F5C610E0
call      qword ptr [r11]
mov       edx,eax
jmp       near ptr M02_L16
M02_L06
 
mov       r10,rcx
mov       r15d,[r10+10]
mov       r13,[r10+8]
mov       edx,[r13+8]
cmp       edx,r15d
jbe       near ptr M02_L14
mov       edx,r15d
movzx     edx,word ptr [r13+rdx*2+0C]
mov       r11,offset DotNetTips.Spargine.Extensions.EnumerableExtensions+<>c__DisplayClass7_0`1[[System.Char, System.Private.CoreLib]].b__0(Char)
cmp       [rbx+18],r11
jne       short M02_L11
mov       r11,[rbx+8]
mov       r9,[r11+8]
mov       r11,r9
test      r11,r11
je        short M02_L12
mov       rcx,r11
mov       r11,7FF9F5C610F0
call      qword ptr [r11]
M02_L07
 
test      eax,eax
je        near ptr M02_L18
M02_L08
 
mov       rcx,[rbp-38]
mov       rdi,[rcx]
mov       r14,offset MT_System.CharEnumerator
cmp       rdi,r14
jne       short M02_L10
mov       rax,rcx
mov       r8d,[rax+10]
inc       r8d
mov       rdx,[rax+8]
mov       esi,[rdx+8]
cmp       r8d,esi
jge       short M02_L09
mov       [rax+10],r8d
jmp       near ptr M02_L06
M02_L09
 
mov       [rax+10],esi
jmp       short M02_L17
M02_L10
 
mov       r11,7FF9F5C610D8
call      qword ptr [r11]
test      eax,eax
jne       short M02_L13
jmp       short M02_L17
M02_L11
 
mov       rcx,[rbx+8]
call      qword ptr [rbx+18]
jmp       short M02_L07
M02_L12
 
mov       rcx,r9
xor       r8d,r8d
call      qword ptr [7FF9F69F76F0]
jmp       short M02_L07
M02_L13
 
mov       rcx,[rbp-38]
mov       r11,7FF9F5C610E0
call      qword ptr [r11]
mov       edx,eax
jmp       short M02_L11
M02_L14
 
mov       ecx,[r10+10]
call      qword ptr [7FF9F600EFD0]
int       3
M02_L15
 
mov       rcx,r9
xor       r8d,r8d
call      qword ptr [7FF9F69F76F0]
jmp       near ptr M02_L02
M02_L16
 
mov       rcx,[rbx+8]
call      qword ptr [rbx+18]
jmp       near ptr M02_L02
M02_L17
 
mov       rcx,[rbp-38]
mov       rcx,rsp
call      M02_L25
jmp       near ptr M02_L24
M02_L18
 
cmp       rdi,r14
jne       near ptr M02_L23
xor       eax,eax
mov       rcx,[rbp-38]
mov       [rcx+8],rax
M02_L19
 
xor       eax,eax
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L20
 
call      qword ptr [7FF9F63252C0]
mov       ecx,43
mov       rdx,7FF9F62A3C60
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1446
mov       rdx,7FF9F6135A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DA6B08]; System.String.Concat(System.String, System.String)
mov       rdi,rax
mov       ecx,1
mov       rdx,7FF9F62A3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F5DA6B08]; System.String.Concat(System.String, System.String)
mov       r14,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
call      qword ptr [7FF9F63250B0]
mov       r8,rax
mov       rdx,r14
mov       rcx,rbx
call      qword ptr [7FF9F6036670]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M02_L21
 
call      qword ptr [7FF9F63252C0]
mov       ecx,263
mov       rdx,7FF9F62A3C60
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1446
mov       rdx,7FF9F6135A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DA6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FF9F62A3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DA6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63250B0]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FF9F6036670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L22
 
mov       rcx,rsi
mov       r11,7FF9F5C610D0
call      qword ptr [r11]
mov       rcx,rax
jmp       near ptr M02_L00
M02_L23
 
mov       rcx,[rbp-38]
mov       r11,7FF9F5C610E8
call      qword ptr [r11]
jmp       near ptr M02_L19
M02_L24
 
mov       eax,1
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L25
 
push      rbp
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbx
sub       rsp,30
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+60]
cmp       qword ptr [rbp-38],0
je        short M02_L27
mov       rcx,[rbp-38]
mov       rdi,[rcx]
mov       r14,offset MT_System.CharEnumerator
cmp       rdi,r14
jne       short M02_L26
xor       r11d,r11d
mov       [rcx+8],r11
jmp       short M02_L27
M02_L26
 
mov       r11,7FF9F5C610E8
call      qword ptr [r11]
M02_L27
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.ContainsAny()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,[rbx+298]
mov       rcx,offset MT_System.Char[]
mov       edx,2
call      CORINFO_HELP_NEWARR_1_VC
mov       rdi,rax
mov       word ptr [rdi+10],61
mov       word ptr [rdi+12],7A
mov       rcx,offset MT_DotNetTips.Spargine.Extensions.EnumerableExtensions+<>c__DisplayClass7_0`1[[System.Char, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
lea       rcx,[rbp+8]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
test      rsi,rsi
je        short M00_L01
mov       rcx,[rbp+8]
mov       ecx,[rcx+8]
mov       rcx,offset MT_System.Func`2[[System.Char, System.Private.CoreLib],[System.Boolean, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
lea       rcx,[rdi+8]
mov       rdx,rbp
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,offset DotNetTips.Spargine.Extensions.EnumerableExtensions+<>c__DisplayClass7_0`1[[System.Char, System.Private.CoreLib]].b__0(Char)
mov       [rdi+18],rcx
mov       rcx,rsi
mov       rdx,rdi
call      qword ptr [7FF9F688D5C0]; DotNetTips.Spargine.Extensions.EnumerableExtensions.FastAny[[System.Char, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1, System.Func`2)
M00_L00
 
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L01
 
xor       eax,eax
jmp       short M00_L00
 
DotNetTips.Spargine.Extensions.EnumerableExtensions+<>c__DisplayClass7_0`1[[System.Char, System.Private.CoreLib]].b__0(Char)
mov       rcx,[rcx+8]
movzx     edx,dx
jmp       qword ptr [7FF9F688D6B0]; System.Linq.Enumerable.Contains[[System.Char, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1, Char)
 
DotNetTips.Spargine.Extensions.EnumerableExtensions.FastAny[[System.Char, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1, System.Func`2)
push      rbp
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbx
sub       rsp,30
lea       rbp,[rsp+60]
mov       [rbp-40],rsp
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L20
test      rbx,rbx
je        near ptr M02_L21
mov       rcx,offset MT_System.String
cmp       [rsi],rcx
jne       near ptr M02_L22
mov       rdi,offset MT_System.CharEnumerator
mov       rcx,rdi
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       dword ptr [rdi+10],0FFFFFFFF
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,rdi
M02_L00
 
mov       [rbp-38],rcx
test      rcx,rcx
je        near ptr M02_L08
mov       rdi,[rcx]
mov       rdx,offset MT_System.CharEnumerator
mov       r14,rdx
cmp       rdi,r14
jne       near ptr M02_L08
mov       rdx,offset DotNetTips.Spargine.Extensions.EnumerableExtensions+<>c__DisplayClass7_0`1[[System.Char, System.Private.CoreLib]].b__0(Char)
cmp       [rbx+18],rdx
jne       near ptr M02_L08
jmp       short M02_L03
M02_L01
 
mov       r10,rcx
mov       r15d,[r10+10]
mov       r13,[r10+8]
mov       edx,[r13+8]
cmp       edx,r15d
jbe       near ptr M02_L14
mov       edx,r15d
movzx     edx,word ptr [r13+rdx*2+0C]
mov       r11,[rbx+8]
mov       r9,[r11+8]
mov       r11,r9
test      r11,r11
je        near ptr M02_L15
mov       rcx,r11
mov       r11,7FF9F5C810F0
call      qword ptr [r11]
M02_L02
 
test      eax,eax
je        near ptr M02_L18
M02_L03
 
mov       rcx,[rbp-38]
cmp       rdi,r14
jne       short M02_L05
mov       rax,rcx
mov       r8d,[rax+10]
inc       r8d
mov       rdx,[rax+8]
mov       esi,[rdx+8]
cmp       r8d,esi
jge       short M02_L04
mov       [rax+10],r8d
jmp       short M02_L01
M02_L04
 
mov       [rax+10],esi
jmp       near ptr M02_L17
M02_L05
 
mov       r11,7FF9F5C810D8
call      qword ptr [r11]
test      eax,eax
je        near ptr M02_L17
mov       rcx,[rbp-38]
mov       r11,7FF9F5C810E0
call      qword ptr [r11]
mov       edx,eax
jmp       near ptr M02_L16
M02_L06
 
mov       r10,rcx
mov       r15d,[r10+10]
mov       r13,[r10+8]
mov       edx,[r13+8]
cmp       edx,r15d
jbe       near ptr M02_L14
mov       edx,r15d
movzx     edx,word ptr [r13+rdx*2+0C]
mov       r11,offset DotNetTips.Spargine.Extensions.EnumerableExtensions+<>c__DisplayClass7_0`1[[System.Char, System.Private.CoreLib]].b__0(Char)
cmp       [rbx+18],r11
jne       short M02_L11
mov       r11,[rbx+8]
mov       r9,[r11+8]
mov       r11,r9
test      r11,r11
je        short M02_L12
mov       rcx,r11
mov       r11,7FF9F5C810F0
call      qword ptr [r11]
M02_L07
 
test      eax,eax
je        near ptr M02_L18
M02_L08
 
mov       rcx,[rbp-38]
mov       rdi,[rcx]
mov       r14,offset MT_System.CharEnumerator
cmp       rdi,r14
jne       short M02_L10
mov       rax,rcx
mov       r8d,[rax+10]
inc       r8d
mov       rdx,[rax+8]
mov       esi,[rdx+8]
cmp       r8d,esi
jge       short M02_L09
mov       [rax+10],r8d
jmp       near ptr M02_L06
M02_L09
 
mov       [rax+10],esi
jmp       short M02_L17
M02_L10
 
mov       r11,7FF9F5C810D8
call      qword ptr [r11]
test      eax,eax
jne       short M02_L13
jmp       short M02_L17
M02_L11
 
mov       rcx,[rbx+8]
call      qword ptr [rbx+18]
jmp       short M02_L07
M02_L12
 
mov       rcx,r9
xor       r8d,r8d
call      qword ptr [7FF9F6A16DD8]
jmp       short M02_L07
M02_L13
 
mov       rcx,[rbp-38]
mov       r11,7FF9F5C810E0
call      qword ptr [r11]
mov       edx,eax
jmp       short M02_L11
M02_L14
 
mov       ecx,[r10+10]
call      qword ptr [7FF9F602EFD0]
int       3
M02_L15
 
mov       rcx,r9
xor       r8d,r8d
call      qword ptr [7FF9F6A16DD8]
jmp       near ptr M02_L02
M02_L16
 
mov       rcx,[rbx+8]
call      qword ptr [rbx+18]
jmp       near ptr M02_L02
M02_L17
 
mov       rcx,[rbp-38]
mov       rcx,rsp
call      M02_L25
jmp       near ptr M02_L24
M02_L18
 
cmp       rdi,r14
jne       near ptr M02_L23
xor       eax,eax
mov       rcx,[rbp-38]
mov       [rcx+8],rax
M02_L19
 
xor       eax,eax
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L20
 
call      qword ptr [7FF9F63452C0]
mov       ecx,43
mov       rdx,7FF9F62C3C60
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1446
mov       rdx,7FF9F6155A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DC6B08]; System.String.Concat(System.String, System.String)
mov       rdi,rax
mov       ecx,1
mov       rdx,7FF9F62C3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F5DC6B08]; System.String.Concat(System.String, System.String)
mov       r14,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
call      qword ptr [7FF9F63450B0]
mov       r8,rax
mov       rdx,r14
mov       rcx,rbx
call      qword ptr [7FF9F6056670]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M02_L21
 
call      qword ptr [7FF9F63452C0]
mov       ecx,263
mov       rdx,7FF9F62C3C60
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1446
mov       rdx,7FF9F6155A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DC6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FF9F62C3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DC6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63450B0]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FF9F6056670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L22
 
mov       rcx,rsi
mov       r11,7FF9F5C810D0
call      qword ptr [r11]
mov       rcx,rax
jmp       near ptr M02_L00
M02_L23
 
mov       rcx,[rbp-38]
mov       r11,7FF9F5C810E8
call      qword ptr [r11]
jmp       near ptr M02_L19
M02_L24
 
mov       eax,1
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L25
 
push      rbp
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbx
sub       rsp,30
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+60]
cmp       qword ptr [rbp-38],0
je        short M02_L27
mov       rcx,[rbp-38]
mov       rdi,[rcx]
mov       r14,offset MT_System.CharEnumerator
cmp       rdi,r14
jne       short M02_L26
xor       r11d,r11d
mov       [rcx+8],r11
jmp       short M02_L27
M02_L26
 
mov       r11,7FF9F5C810E8
call      qword ptr [r11]
M02_L27
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.ContainsAny()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,[rbx+298]
mov       rcx,offset MT_System.Char[]
mov       edx,2
call      CORINFO_HELP_NEWARR_1_VC
mov       rdi,rax
mov       word ptr [rdi+10],61
mov       word ptr [rdi+12],7A
mov       rcx,offset MT_DotNetTips.Spargine.Extensions.EnumerableExtensions+<>c__DisplayClass7_0`1[[System.Char, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
lea       rcx,[rbp+8]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
test      rsi,rsi
je        short M00_L01
mov       rcx,[rbp+8]
mov       ecx,[rcx+8]
mov       rcx,offset MT_System.Func`2[[System.Char, System.Private.CoreLib],[System.Boolean, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
lea       rcx,[rdi+8]
mov       rdx,rbp
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,offset DotNetTips.Spargine.Extensions.EnumerableExtensions+<>c__DisplayClass7_0`1[[System.Char, System.Private.CoreLib]].b__0(Char)
mov       [rdi+18],rcx
mov       rcx,rsi
mov       rdx,rdi
call      qword ptr [7FF9F68AD5C0]; DotNetTips.Spargine.Extensions.EnumerableExtensions.FastAny[[System.Char, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1, System.Func`2)
M00_L00
 
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L01
 
xor       eax,eax
jmp       short M00_L00
 
DotNetTips.Spargine.Extensions.EnumerableExtensions+<>c__DisplayClass7_0`1[[System.Char, System.Private.CoreLib]].b__0(Char)
mov       rcx,[rcx+8]
movzx     edx,dx
jmp       qword ptr [7FF9F68AD6B0]; System.Linq.Enumerable.Contains[[System.Char, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1, Char)
 
DotNetTips.Spargine.Extensions.EnumerableExtensions.FastAny[[System.Char, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1, System.Func`2)
push      rbp
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbx
sub       rsp,30
lea       rbp,[rsp+60]
mov       [rbp-40],rsp
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L20
test      rbx,rbx
je        near ptr M02_L21
mov       rcx,offset MT_System.String
cmp       [rsi],rcx
jne       near ptr M02_L22
mov       rdi,offset MT_System.CharEnumerator
mov       rcx,rdi
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       dword ptr [rdi+10],0FFFFFFFF
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,rdi
M02_L00
 
mov       [rbp-38],rcx
test      rcx,rcx
je        near ptr M02_L08
mov       rdi,[rcx]
mov       rdx,offset MT_System.CharEnumerator
mov       r14,rdx
cmp       rdi,r14
jne       near ptr M02_L08
mov       rdx,offset DotNetTips.Spargine.Extensions.EnumerableExtensions+<>c__DisplayClass7_0`1[[System.Char, System.Private.CoreLib]].b__0(Char)
cmp       [rbx+18],rdx
jne       near ptr M02_L08
jmp       short M02_L03
M02_L01
 
mov       r10,rcx
mov       r15d,[r10+10]
mov       r13,[r10+8]
mov       edx,[r13+8]
cmp       edx,r15d
jbe       near ptr M02_L14
mov       edx,r15d
movzx     edx,word ptr [r13+rdx*2+0C]
mov       r11,[rbx+8]
mov       r9,[r11+8]
mov       r11,r9
test      r11,r11
je        near ptr M02_L15
mov       rcx,r11
mov       r11,7FF9F5CA10F0
call      qword ptr [r11]
M02_L02
 
test      eax,eax
je        near ptr M02_L18
M02_L03
 
mov       rcx,[rbp-38]
cmp       rdi,r14
jne       short M02_L05
mov       rax,rcx
mov       r8d,[rax+10]
inc       r8d
mov       rdx,[rax+8]
mov       esi,[rdx+8]
cmp       r8d,esi
jge       short M02_L04
mov       [rax+10],r8d
jmp       short M02_L01
M02_L04
 
mov       [rax+10],esi
jmp       near ptr M02_L17
M02_L05
 
mov       r11,7FF9F5CA10D8
call      qword ptr [r11]
test      eax,eax
je        near ptr M02_L17
mov       rcx,[rbp-38]
mov       r11,7FF9F5CA10E0
call      qword ptr [r11]
mov       edx,eax
jmp       near ptr M02_L16
M02_L06
 
mov       r10,rcx
mov       r15d,[r10+10]
mov       r13,[r10+8]
mov       edx,[r13+8]
cmp       edx,r15d
jbe       near ptr M02_L14
mov       edx,r15d
movzx     edx,word ptr [r13+rdx*2+0C]
mov       r11,offset DotNetTips.Spargine.Extensions.EnumerableExtensions+<>c__DisplayClass7_0`1[[System.Char, System.Private.CoreLib]].b__0(Char)
cmp       [rbx+18],r11
jne       short M02_L11
mov       r11,[rbx+8]
mov       r9,[r11+8]
mov       r11,r9
test      r11,r11
je        short M02_L12
mov       rcx,r11
mov       r11,7FF9F5CA10F0
call      qword ptr [r11]
M02_L07
 
test      eax,eax
je        near ptr M02_L18
M02_L08
 
mov       rcx,[rbp-38]
mov       rdi,[rcx]
mov       r14,offset MT_System.CharEnumerator
cmp       rdi,r14
jne       short M02_L10
mov       rax,rcx
mov       r8d,[rax+10]
inc       r8d
mov       rdx,[rax+8]
mov       esi,[rdx+8]
cmp       r8d,esi
jge       short M02_L09
mov       [rax+10],r8d
jmp       near ptr M02_L06
M02_L09
 
mov       [rax+10],esi
jmp       short M02_L17
M02_L10
 
mov       r11,7FF9F5CA10D8
call      qword ptr [r11]
test      eax,eax
jne       short M02_L13
jmp       short M02_L17
M02_L11
 
mov       rcx,[rbx+8]
call      qword ptr [rbx+18]
jmp       short M02_L07
M02_L12
 
mov       rcx,r9
xor       r8d,r8d
call      qword ptr [7FF9F6A36DC0]
jmp       short M02_L07
M02_L13
 
mov       rcx,[rbp-38]
mov       r11,7FF9F5CA10E0
call      qword ptr [r11]
mov       edx,eax
jmp       short M02_L11
M02_L14
 
mov       ecx,[r10+10]
call      qword ptr [7FF9F604EFD0]
int       3
M02_L15
 
mov       rcx,r9
xor       r8d,r8d
call      qword ptr [7FF9F6A36DC0]
jmp       near ptr M02_L02
M02_L16
 
mov       rcx,[rbx+8]
call      qword ptr [rbx+18]
jmp       near ptr M02_L02
M02_L17
 
mov       rcx,[rbp-38]
mov       rcx,rsp
call      M02_L25
jmp       near ptr M02_L24
M02_L18
 
cmp       rdi,r14
jne       near ptr M02_L23
xor       eax,eax
mov       rcx,[rbp-38]
mov       [rcx+8],rax
M02_L19
 
xor       eax,eax
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L20
 
call      qword ptr [7FF9F63652C0]
mov       ecx,43
mov       rdx,7FF9F62E3C60
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1446
mov       rdx,7FF9F6175A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DE6B08]; System.String.Concat(System.String, System.String)
mov       rdi,rax
mov       ecx,1
mov       rdx,7FF9F62E3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F5DE6B08]; System.String.Concat(System.String, System.String)
mov       r14,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
call      qword ptr [7FF9F63650B0]
mov       r8,rax
mov       rdx,r14
mov       rcx,rbx
call      qword ptr [7FF9F6076670]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M02_L21
 
call      qword ptr [7FF9F63652C0]
mov       ecx,263
mov       rdx,7FF9F62E3C60
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1446
mov       rdx,7FF9F6175A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DE6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FF9F62E3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DE6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63650B0]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FF9F6076670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L22
 
mov       rcx,rsi
mov       r11,7FF9F5CA10D0
call      qword ptr [r11]
mov       rcx,rax
jmp       near ptr M02_L00
M02_L23
 
mov       rcx,[rbp-38]
mov       r11,7FF9F5CA10E8
call      qword ptr [r11]
jmp       near ptr M02_L19
M02_L24
 
mov       eax,1
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L25
 
push      rbp
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbx
sub       rsp,30
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+60]
cmp       qword ptr [rbp-38],0
je        short M02_L27
mov       rcx,[rbp-38]
mov       rdi,[rcx]
mov       r14,offset MT_System.CharEnumerator
cmp       rdi,r14
jne       short M02_L26
xor       r11d,r11d
mov       [rcx+8],r11
jmp       short M02_L27
M02_L26
 
mov       r11,7FF9F5CA10E8
call      qword ptr [r11]
M02_L27
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.DelimitedStringToArray()
push      rbx
sub       rsp,40
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+20],xmm4
xor       eax,eax
mov       [rsp+30],rax
mov       rbx,rcx
mov       rcx,[rbx+298]
test      rcx,rcx
je        short M00_L01
cmp       dword ptr [rcx+8],0
je        short M00_L01
mov       dword ptr [rsp+3C],2E
lea       rdx,[rsp+3C]
mov       [rsp+20],rdx
mov       dword ptr [rsp+28],1
lea       rdx,[rsp+20]
mov       r8d,7FFFFFFF
mov       r9d,1
call      qword ptr [7FF9F5DB70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
M00_L00
 
mov       [rsp+30],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+30]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,40
pop       rbx
ret
M00_L01
 
mov       rcx,7FF9F5CF5120
mov       edx,79
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,1CDD5C01FF8
mov       rax,[rcx]
jmp       short M00_L00
 
System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,98
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
vmovdqa   xmmword ptr [rbp+20],xmm4
vmovdqa   xmmword ptr [rbp+30],xmm4
vmovdqa   xmmword ptr [rbp+40],xmm4
vmovdqa   xmmword ptr [rbp+50],xmm4
mov       [rbp+60],rax
mov       rax,0A80030E09CD7
mov       [rbp],rax
mov       rsi,rcx
mov       rbx,rdx
mov       edi,r8d
mov       r14d,r9d
test      edi,edi
jl        near ptr M01_L06
test      r14d,0FFFFFFFC
jne       near ptr M01_L07
M01_L00
 
cmp       edi,1
jle       near ptr M01_L08
mov       r15d,[rsi+8]
test      r15d,r15d
je        near ptr M01_L08
cmp       dword ptr [rbx+8],0
je        near ptr M01_L10
M01_L01
 
test      [rsp],esp
sub       rsp,200
lea       rcx,[rsp+30]
mov       [rbp+58],rcx
mov       dword ptr [rbp+60],80
xor       ecx,ecx
mov       [rbp+48],rcx
mov       [rbp+50],ecx
lea       rcx,[rsi+0C]
mov       [rbp+38],rcx
mov       [rbp+40],r15d
vmovdqu   xmm0,xmmword ptr [rbx]
vmovdqu   xmmword ptr [rbp+28],xmm0
lea       rcx,[rbp+38]
lea       rdx,[rbp+28]
lea       r8,[rbp+48]
call      qword ptr [7FF9F5DB71B0]; System.String.MakeSeparatorListAny(System.ReadOnlySpan`1, System.ReadOnlySpan`1, System.Collections.Generic.ValueListBuilder`1 ByRef)
mov       eax,[rbp+50]
cmp       eax,[rbp+60]
ja        near ptr M01_L11
mov       r10,[rbp+58]
test      eax,eax
je        near ptr M01_L12
test      r14d,r14d
je        near ptr M01_L05
xor       ecx,ecx
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],rcx
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       [rsp+28],r14d
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DB7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       rbx,rax
M01_L02
 
mov       rdx,[rbp+48]
test      rdx,rdx
je        short M01_L03
xor       ecx,ecx
mov       [rbp+48],rcx
mov       rcx,1CDD5C01F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65B5168]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M01_L03
 
mov       rax,rbx
mov       rcx,0A80030E09CD7
cmp       [rbp],rcx
je        short M01_L04
call      CORINFO_HELP_FAIL_FAST
M01_L04
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L05
 
xor       r14d,r14d
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],r14
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DB7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       rbx,rax
jmp       short M01_L02
M01_L06
 
mov       ecx,1C7
mov       rdx,7FF9F5C64000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,edi
call      qword ptr [7FF9F687E520]
int       3
M01_L07
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F601ECB8]
int       3
M01_L08
 
mov       rcx,rsi
mov       edx,r14d
mov       r8d,edi
call      qword ptr [7FF9F5DB7150]; System.String.CreateSplitArrayOfThisAsSoleValue(System.StringSplitOptions, Int32)
mov       rcx,0A80030E09CD7
cmp       [rbp],rcx
je        short M01_L09
call      CORINFO_HELP_FAIL_FAST
M01_L09
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L10
 
cmp       r15d,edi
jge       near ptr M01_L01
and       r14d,0FFFFFFFD
jmp       near ptr M01_L01
M01_L11
 
call      qword ptr [7FF9F601E9D0]
int       3
M01_L12
 
mov       edi,1
jmp       near ptr M01_L00
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.DelimitedStringToArray()
push      rbx
sub       rsp,40
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+20],xmm4
xor       eax,eax
mov       [rsp+30],rax
mov       rbx,rcx
mov       rcx,[rbx+298]
test      rcx,rcx
je        short M00_L01
cmp       dword ptr [rcx+8],0
je        short M00_L01
mov       dword ptr [rsp+3C],2E
lea       rdx,[rsp+3C]
mov       [rsp+20],rdx
mov       dword ptr [rsp+28],1
lea       rdx,[rsp+20]
mov       r8d,7FFFFFFF
mov       r9d,1
call      qword ptr [7FF9F5DC70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
M00_L00
 
mov       [rsp+30],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+30]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,40
pop       rbx
ret
M00_L01
 
mov       rcx,7FF9F5D05120
mov       edx,79
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,233DB801FF8
mov       rax,[rcx]
jmp       short M00_L00
 
System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,98
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
vmovdqa   xmmword ptr [rbp+20],xmm4
vmovdqa   xmmword ptr [rbp+30],xmm4
vmovdqa   xmmword ptr [rbp+40],xmm4
vmovdqa   xmmword ptr [rbp+50],xmm4
mov       [rbp+60],rax
mov       rax,8565DB563929
mov       [rbp],rax
mov       rsi,rcx
mov       rbx,rdx
mov       edi,r8d
mov       r14d,r9d
test      edi,edi
jl        near ptr M01_L06
test      r14d,0FFFFFFFC
jne       near ptr M01_L07
M01_L00
 
cmp       edi,1
jle       near ptr M01_L08
mov       r15d,[rsi+8]
test      r15d,r15d
je        near ptr M01_L08
cmp       dword ptr [rbx+8],0
je        near ptr M01_L10
M01_L01
 
test      [rsp],esp
sub       rsp,200
lea       rcx,[rsp+30]
mov       [rbp+58],rcx
mov       dword ptr [rbp+60],80
xor       ecx,ecx
mov       [rbp+48],rcx
mov       [rbp+50],ecx
lea       rcx,[rsi+0C]
mov       [rbp+38],rcx
mov       [rbp+40],r15d
vmovdqu   xmm0,xmmword ptr [rbx]
vmovdqu   xmmword ptr [rbp+28],xmm0
lea       rcx,[rbp+38]
lea       rdx,[rbp+28]
lea       r8,[rbp+48]
call      qword ptr [7FF9F5DC71B0]; System.String.MakeSeparatorListAny(System.ReadOnlySpan`1, System.ReadOnlySpan`1, System.Collections.Generic.ValueListBuilder`1 ByRef)
mov       eax,[rbp+50]
cmp       eax,[rbp+60]
ja        near ptr M01_L11
mov       r10,[rbp+58]
test      eax,eax
je        near ptr M01_L12
test      r14d,r14d
je        near ptr M01_L05
xor       ecx,ecx
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],rcx
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       [rsp+28],r14d
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DC7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       rbx,rax
M01_L02
 
mov       rdx,[rbp+48]
test      rdx,rdx
je        short M01_L03
xor       ecx,ecx
mov       [rbp+48],rcx
mov       rcx,233DB801F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65C5180]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M01_L03
 
mov       rax,rbx
mov       rcx,8565DB563929
cmp       [rbp],rcx
je        short M01_L04
call      CORINFO_HELP_FAIL_FAST
M01_L04
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L05
 
xor       r14d,r14d
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],r14
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DC7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       rbx,rax
jmp       short M01_L02
M01_L06
 
mov       ecx,1C7
mov       rdx,7FF9F5C74000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,edi
call      qword ptr [7FF9F688E520]
int       3
M01_L07
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F602ECB8]
int       3
M01_L08
 
mov       rcx,rsi
mov       edx,r14d
mov       r8d,edi
call      qword ptr [7FF9F5DC7150]; System.String.CreateSplitArrayOfThisAsSoleValue(System.StringSplitOptions, Int32)
mov       rcx,8565DB563929
cmp       [rbp],rcx
je        short M01_L09
call      CORINFO_HELP_FAIL_FAST
M01_L09
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L10
 
cmp       r15d,edi
jge       near ptr M01_L01
and       r14d,0FFFFFFFD
jmp       near ptr M01_L01
M01_L11
 
call      qword ptr [7FF9F602E9D0]
int       3
M01_L12
 
mov       edi,1
jmp       near ptr M01_L00
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.DelimitedStringToArray()
push      rbx
sub       rsp,40
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+20],xmm4
xor       eax,eax
mov       [rsp+30],rax
mov       rbx,rcx
mov       rcx,[rbx+298]
test      rcx,rcx
je        short M00_L01
cmp       dword ptr [rcx+8],0
je        short M00_L01
mov       dword ptr [rsp+3C],2E
lea       rdx,[rsp+3C]
mov       [rsp+20],rdx
mov       dword ptr [rsp+28],1
lea       rdx,[rsp+20]
mov       r8d,7FFFFFFF
mov       r9d,1
call      qword ptr [7FF9F5DE70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
M00_L00
 
mov       [rsp+30],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+30]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,40
pop       rbx
ret
M00_L01
 
mov       rcx,7FF9F5D25120
mov       edx,7A
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,2062AC02000
mov       rax,[rcx]
jmp       short M00_L00
 
System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,98
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
vmovdqa   xmmword ptr [rbp+20],xmm4
vmovdqa   xmmword ptr [rbp+30],xmm4
vmovdqa   xmmword ptr [rbp+40],xmm4
vmovdqa   xmmword ptr [rbp+50],xmm4
mov       [rbp+60],rax
mov       rax,30753219A823
mov       [rbp],rax
mov       rsi,rcx
mov       rbx,rdx
mov       edi,r8d
mov       r14d,r9d
test      edi,edi
jl        near ptr M01_L06
test      r14d,0FFFFFFFC
jne       near ptr M01_L07
M01_L00
 
cmp       edi,1
jle       near ptr M01_L08
mov       r15d,[rsi+8]
test      r15d,r15d
je        near ptr M01_L08
cmp       dword ptr [rbx+8],0
je        near ptr M01_L10
M01_L01
 
test      [rsp],esp
sub       rsp,200
lea       rcx,[rsp+30]
mov       [rbp+58],rcx
mov       dword ptr [rbp+60],80
xor       ecx,ecx
mov       [rbp+48],rcx
mov       [rbp+50],ecx
lea       rcx,[rsi+0C]
mov       [rbp+38],rcx
mov       [rbp+40],r15d
vmovdqu   xmm0,xmmword ptr [rbx]
vmovdqu   xmmword ptr [rbp+28],xmm0
lea       rcx,[rbp+38]
lea       rdx,[rbp+28]
lea       r8,[rbp+48]
call      qword ptr [7FF9F5DE71B0]; System.String.MakeSeparatorListAny(System.ReadOnlySpan`1, System.ReadOnlySpan`1, System.Collections.Generic.ValueListBuilder`1 ByRef)
mov       eax,[rbp+50]
cmp       eax,[rbp+60]
ja        near ptr M01_L11
mov       r10,[rbp+58]
test      eax,eax
je        near ptr M01_L12
test      r14d,r14d
je        near ptr M01_L05
xor       ecx,ecx
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],rcx
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       [rsp+28],r14d
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DE7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       rbx,rax
M01_L02
 
mov       rdx,[rbp+48]
test      rdx,rdx
je        short M01_L03
xor       ecx,ecx
mov       [rbp+48],rcx
mov       rcx,2062AC01F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65E4C18]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M01_L03
 
mov       rax,rbx
mov       rcx,30753219A823
cmp       [rbp],rcx
je        short M01_L04
call      CORINFO_HELP_FAIL_FAST
M01_L04
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L05
 
xor       r14d,r14d
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],r14
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DE7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       rbx,rax
jmp       short M01_L02
M01_L06
 
mov       ecx,1C7
mov       rdx,7FF9F5C94000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,edi
call      qword ptr [7FF9F68AE520]
int       3
M01_L07
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F604ECB8]
int       3
M01_L08
 
mov       rcx,rsi
mov       edx,r14d
mov       r8d,edi
call      qword ptr [7FF9F5DE7150]; System.String.CreateSplitArrayOfThisAsSoleValue(System.StringSplitOptions, Int32)
mov       rcx,30753219A823
cmp       [rbp],rcx
je        short M01_L09
call      CORINFO_HELP_FAIL_FAST
M01_L09
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L10
 
cmp       r15d,edi
jge       near ptr M01_L01
and       r14d,0FFFFFFFD
jmp       near ptr M01_L01
M01_L11
 
call      qword ptr [7FF9F604E9D0]
int       3
M01_L12
 
mov       edi,1
jmp       near ptr M01_L00
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.DelimitedStringToArray()
push      rbx
sub       rsp,40
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+20],xmm4
xor       eax,eax
mov       [rsp+30],rax
mov       rbx,rcx
mov       rcx,[rbx+298]
test      rcx,rcx
je        short M00_L01
cmp       dword ptr [rcx+8],0
je        short M00_L01
mov       dword ptr [rsp+3C],2E
lea       rdx,[rsp+3C]
mov       [rsp+20],rdx
mov       dword ptr [rsp+28],1
lea       rdx,[rsp+20]
mov       r8d,7FFFFFFF
mov       r9d,1
call      qword ptr [7FF9F5DD70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
M00_L00
 
mov       [rsp+30],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+30]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,40
pop       rbx
ret
M00_L01
 
mov       rcx,7FF9F5D15120
mov       edx,7A
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,1D8BC402000
mov       rax,[rcx]
jmp       short M00_L00
 
System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,98
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
vmovdqa   xmmword ptr [rbp+20],xmm4
vmovdqa   xmmword ptr [rbp+30],xmm4
vmovdqa   xmmword ptr [rbp+40],xmm4
vmovdqa   xmmword ptr [rbp+50],xmm4
mov       [rbp+60],rax
mov       rax,360A6BCF6A7E
mov       [rbp],rax
mov       rsi,rcx
mov       rbx,rdx
mov       edi,r8d
mov       r14d,r9d
test      edi,edi
jl        near ptr M01_L06
test      r14d,0FFFFFFFC
jne       near ptr M01_L07
M01_L00
 
cmp       edi,1
jle       near ptr M01_L08
mov       r15d,[rsi+8]
test      r15d,r15d
je        near ptr M01_L08
cmp       dword ptr [rbx+8],0
je        near ptr M01_L10
M01_L01
 
test      [rsp],esp
sub       rsp,200
lea       rcx,[rsp+30]
mov       [rbp+58],rcx
mov       dword ptr [rbp+60],80
xor       ecx,ecx
mov       [rbp+48],rcx
mov       [rbp+50],ecx
lea       rcx,[rsi+0C]
mov       [rbp+38],rcx
mov       [rbp+40],r15d
vmovdqu   xmm0,xmmword ptr [rbx]
vmovdqu   xmmword ptr [rbp+28],xmm0
lea       rcx,[rbp+38]
lea       rdx,[rbp+28]
lea       r8,[rbp+48]
call      qword ptr [7FF9F5DD71B0]; System.String.MakeSeparatorListAny(System.ReadOnlySpan`1, System.ReadOnlySpan`1, System.Collections.Generic.ValueListBuilder`1 ByRef)
mov       eax,[rbp+50]
cmp       eax,[rbp+60]
ja        near ptr M01_L11
mov       r10,[rbp+58]
test      eax,eax
je        near ptr M01_L12
test      r14d,r14d
je        near ptr M01_L05
xor       ecx,ecx
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],rcx
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       [rsp+28],r14d
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DD7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       rbx,rax
M01_L02
 
mov       rdx,[rbp+48]
test      rdx,rdx
je        short M01_L03
xor       ecx,ecx
mov       [rbp+48],rcx
mov       rcx,1D8BC401F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65D5240]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M01_L03
 
mov       rax,rbx
mov       rcx,360A6BCF6A7E
cmp       [rbp],rcx
je        short M01_L04
call      CORINFO_HELP_FAIL_FAST
M01_L04
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L05
 
xor       r14d,r14d
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],r14
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DD7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       rbx,rax
jmp       short M01_L02
M01_L06
 
mov       ecx,1C7
mov       rdx,7FF9F5C84000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,edi
call      qword ptr [7FF9F689E520]
int       3
M01_L07
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F603ECB8]
int       3
M01_L08
 
mov       rcx,rsi
mov       edx,r14d
mov       r8d,edi
call      qword ptr [7FF9F5DD7150]; System.String.CreateSplitArrayOfThisAsSoleValue(System.StringSplitOptions, Int32)
mov       rcx,360A6BCF6A7E
cmp       [rbp],rcx
je        short M01_L09
call      CORINFO_HELP_FAIL_FAST
M01_L09
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L10
 
cmp       r15d,edi
jge       near ptr M01_L01
and       r14d,0FFFFFFFD
jmp       near ptr M01_L01
M01_L11
 
call      qword ptr [7FF9F603E9D0]
int       3
M01_L12
 
mov       edi,1
jmp       near ptr M01_L00
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.DelimitedStringToArray()
push      rbx
sub       rsp,40
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+20],xmm4
xor       eax,eax
mov       [rsp+30],rax
mov       rbx,rcx
mov       rcx,[rbx+298]
test      rcx,rcx
je        short M00_L01
cmp       dword ptr [rcx+8],0
je        short M00_L01
mov       dword ptr [rsp+3C],2E
lea       rdx,[rsp+3C]
mov       [rsp+20],rdx
mov       dword ptr [rsp+28],1
lea       rdx,[rsp+20]
mov       r8d,7FFFFFFF
mov       r9d,1
call      qword ptr [7FF9F5DE70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
M00_L00
 
mov       [rsp+30],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+30]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,40
pop       rbx
ret
M00_L01
 
mov       rcx,7FF9F5D25120
mov       edx,7A
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,19A7D402000
mov       rax,[rcx]
jmp       short M00_L00
 
System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,98
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
vmovdqa   xmmword ptr [rbp+20],xmm4
vmovdqa   xmmword ptr [rbp+30],xmm4
vmovdqa   xmmword ptr [rbp+40],xmm4
vmovdqa   xmmword ptr [rbp+50],xmm4
mov       [rbp+60],rax
mov       rax,0B90ECF21AE8E
mov       [rbp],rax
mov       rsi,rcx
mov       rbx,rdx
mov       edi,r8d
mov       r14d,r9d
test      edi,edi
jl        near ptr M01_L06
test      r14d,0FFFFFFFC
jne       near ptr M01_L07
M01_L00
 
cmp       edi,1
jle       near ptr M01_L08
mov       r15d,[rsi+8]
test      r15d,r15d
je        near ptr M01_L08
cmp       dword ptr [rbx+8],0
je        near ptr M01_L10
M01_L01
 
test      [rsp],esp
sub       rsp,200
lea       rcx,[rsp+30]
mov       [rbp+58],rcx
mov       dword ptr [rbp+60],80
xor       ecx,ecx
mov       [rbp+48],rcx
mov       [rbp+50],ecx
lea       rcx,[rsi+0C]
mov       [rbp+38],rcx
mov       [rbp+40],r15d
vmovdqu   xmm0,xmmword ptr [rbx]
vmovdqu   xmmword ptr [rbp+28],xmm0
lea       rcx,[rbp+38]
lea       rdx,[rbp+28]
lea       r8,[rbp+48]
call      qword ptr [7FF9F5DE71B0]; System.String.MakeSeparatorListAny(System.ReadOnlySpan`1, System.ReadOnlySpan`1, System.Collections.Generic.ValueListBuilder`1 ByRef)
mov       eax,[rbp+50]
cmp       eax,[rbp+60]
ja        near ptr M01_L11
mov       r10,[rbp+58]
test      eax,eax
je        near ptr M01_L12
test      r14d,r14d
je        near ptr M01_L05
xor       ecx,ecx
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],rcx
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       [rsp+28],r14d
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DE7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       rbx,rax
M01_L02
 
mov       rdx,[rbp+48]
test      rdx,rdx
je        short M01_L03
xor       ecx,ecx
mov       [rbp+48],rcx
mov       rcx,19A7D401F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65E4C18]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M01_L03
 
mov       rax,rbx
mov       rcx,0B90ECF21AE8E
cmp       [rbp],rcx
je        short M01_L04
call      CORINFO_HELP_FAIL_FAST
M01_L04
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L05
 
xor       r14d,r14d
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],r14
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DE7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       rbx,rax
jmp       short M01_L02
M01_L06
 
mov       ecx,1C7
mov       rdx,7FF9F5C94000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,edi
call      qword ptr [7FF9F68AFBD0]
int       3
M01_L07
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F604ECB8]
int       3
M01_L08
 
mov       rcx,rsi
mov       edx,r14d
mov       r8d,edi
call      qword ptr [7FF9F5DE7150]; System.String.CreateSplitArrayOfThisAsSoleValue(System.StringSplitOptions, Int32)
mov       rcx,0B90ECF21AE8E
cmp       [rbp],rcx
je        short M01_L09
call      CORINFO_HELP_FAIL_FAST
M01_L09
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L10
 
cmp       r15d,edi
jge       near ptr M01_L01
and       r14d,0FFFFFFFD
jmp       near ptr M01_L01
M01_L11
 
call      qword ptr [7FF9F604E9D0]
int       3
M01_L12
 
mov       edi,1
jmp       near ptr M01_L00
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.DelimitedStringToArray()
push      rbx
sub       rsp,40
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+20],xmm4
xor       eax,eax
mov       [rsp+30],rax
mov       rbx,rcx
mov       rcx,[rbx+298]
test      rcx,rcx
je        short M00_L01
cmp       dword ptr [rcx+8],0
je        short M00_L01
mov       dword ptr [rsp+3C],2E
lea       rdx,[rsp+3C]
mov       [rsp+20],rdx
mov       dword ptr [rsp+28],1
lea       rdx,[rsp+20]
mov       r8d,7FFFFFFF
mov       r9d,1
call      qword ptr [7FF9F5DA70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
M00_L00
 
mov       [rsp+30],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+30]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,40
pop       rbx
ret
M00_L01
 
mov       rcx,7FF9F5CE5120
mov       edx,7A
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,1A935802000
mov       rax,[rcx]
jmp       short M00_L00
 
System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,98
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
vmovdqa   xmmword ptr [rbp+20],xmm4
vmovdqa   xmmword ptr [rbp+30],xmm4
vmovdqa   xmmword ptr [rbp+40],xmm4
vmovdqa   xmmword ptr [rbp+50],xmm4
mov       [rbp+60],rax
mov       rax,22BB1DD9762
mov       [rbp],rax
mov       rsi,rcx
mov       rbx,rdx
mov       edi,r8d
mov       r14d,r9d
test      edi,edi
jl        near ptr M01_L06
test      r14d,0FFFFFFFC
jne       near ptr M01_L07
M01_L00
 
cmp       edi,1
jle       near ptr M01_L08
mov       r15d,[rsi+8]
test      r15d,r15d
je        near ptr M01_L08
cmp       dword ptr [rbx+8],0
je        near ptr M01_L10
M01_L01
 
test      [rsp],esp
sub       rsp,200
lea       rcx,[rsp+30]
mov       [rbp+58],rcx
mov       dword ptr [rbp+60],80
xor       ecx,ecx
mov       [rbp+48],rcx
mov       [rbp+50],ecx
lea       rcx,[rsi+0C]
mov       [rbp+38],rcx
mov       [rbp+40],r15d
vmovdqu   xmm0,xmmword ptr [rbx]
vmovdqu   xmmword ptr [rbp+28],xmm0
lea       rcx,[rbp+38]
lea       rdx,[rbp+28]
lea       r8,[rbp+48]
call      qword ptr [7FF9F5DA71B0]; System.String.MakeSeparatorListAny(System.ReadOnlySpan`1, System.ReadOnlySpan`1, System.Collections.Generic.ValueListBuilder`1 ByRef)
mov       eax,[rbp+50]
cmp       eax,[rbp+60]
ja        near ptr M01_L11
mov       r10,[rbp+58]
test      eax,eax
je        near ptr M01_L12
test      r14d,r14d
je        near ptr M01_L05
xor       ecx,ecx
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],rcx
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       [rsp+28],r14d
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DA7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       rbx,rax
M01_L02
 
mov       rdx,[rbp+48]
test      rdx,rdx
je        short M01_L03
xor       ecx,ecx
mov       [rbp+48],rcx
mov       rcx,1A935801F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65A5250]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M01_L03
 
mov       rax,rbx
mov       rcx,22BB1DD9762
cmp       [rbp],rcx
je        short M01_L04
call      CORINFO_HELP_FAIL_FAST
M01_L04
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L05
 
xor       r14d,r14d
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],r14
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DA7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       rbx,rax
jmp       short M01_L02
M01_L06
 
mov       ecx,1C7
mov       rdx,7FF9F5C54000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,edi
call      qword ptr [7FF9F686FFC0]
int       3
M01_L07
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F600ECB8]
int       3
M01_L08
 
mov       rcx,rsi
mov       edx,r14d
mov       r8d,edi
call      qword ptr [7FF9F5DA7150]; System.String.CreateSplitArrayOfThisAsSoleValue(System.StringSplitOptions, Int32)
mov       rcx,22BB1DD9762
cmp       [rbp],rcx
je        short M01_L09
call      CORINFO_HELP_FAIL_FAST
M01_L09
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L10
 
cmp       r15d,edi
jge       near ptr M01_L01
and       r14d,0FFFFFFFD
jmp       near ptr M01_L01
M01_L11
 
call      qword ptr [7FF9F600E9D0]
int       3
M01_L12
 
mov       edi,1
jmp       near ptr M01_L00
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.DelimitedStringToArray()
push      rbx
sub       rsp,40
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+20],xmm4
xor       eax,eax
mov       [rsp+30],rax
mov       rbx,rcx
mov       rcx,[rbx+298]
test      rcx,rcx
je        short M00_L01
cmp       dword ptr [rcx+8],0
je        short M00_L01
mov       dword ptr [rsp+3C],2E
lea       rdx,[rsp+3C]
mov       [rsp+20],rdx
mov       dword ptr [rsp+28],1
lea       rdx,[rsp+20]
mov       r8d,7FFFFFFF
mov       r9d,1
call      qword ptr [7FF9F5DC70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
M00_L00
 
mov       [rsp+30],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+30]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,40
pop       rbx
ret
M00_L01
 
mov       rcx,7FF9F5D05120
mov       edx,7A
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,1D821802000
mov       rax,[rcx]
jmp       short M00_L00
 
System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,98
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
vmovdqa   xmmword ptr [rbp+20],xmm4
vmovdqa   xmmword ptr [rbp+30],xmm4
vmovdqa   xmmword ptr [rbp+40],xmm4
vmovdqa   xmmword ptr [rbp+50],xmm4
mov       [rbp+60],rax
mov       rax,0ED180AA2D9E6
mov       [rbp],rax
mov       rsi,rcx
mov       rbx,rdx
mov       edi,r8d
mov       r14d,r9d
test      edi,edi
jl        near ptr M01_L06
test      r14d,0FFFFFFFC
jne       near ptr M01_L07
M01_L00
 
cmp       edi,1
jle       near ptr M01_L08
mov       r15d,[rsi+8]
test      r15d,r15d
je        near ptr M01_L08
cmp       dword ptr [rbx+8],0
je        near ptr M01_L10
M01_L01
 
test      [rsp],esp
sub       rsp,200
lea       rcx,[rsp+30]
mov       [rbp+58],rcx
mov       dword ptr [rbp+60],80
xor       ecx,ecx
mov       [rbp+48],rcx
mov       [rbp+50],ecx
lea       rcx,[rsi+0C]
mov       [rbp+38],rcx
mov       [rbp+40],r15d
vmovdqu   xmm0,xmmword ptr [rbx]
vmovdqu   xmmword ptr [rbp+28],xmm0
lea       rcx,[rbp+38]
lea       rdx,[rbp+28]
lea       r8,[rbp+48]
call      qword ptr [7FF9F5DC71B0]; System.String.MakeSeparatorListAny(System.ReadOnlySpan`1, System.ReadOnlySpan`1, System.Collections.Generic.ValueListBuilder`1 ByRef)
mov       eax,[rbp+50]
cmp       eax,[rbp+60]
ja        near ptr M01_L11
mov       r10,[rbp+58]
test      eax,eax
je        near ptr M01_L12
test      r14d,r14d
je        near ptr M01_L05
xor       ecx,ecx
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],rcx
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       [rsp+28],r14d
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DC7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       rbx,rax
M01_L02
 
mov       rdx,[rbp+48]
test      rdx,rdx
je        short M01_L03
xor       ecx,ecx
mov       [rbp+48],rcx
mov       rcx,1D821801F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65C4C18]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M01_L03
 
mov       rax,rbx
mov       rcx,0ED180AA2D9E6
cmp       [rbp],rcx
je        short M01_L04
call      CORINFO_HELP_FAIL_FAST
M01_L04
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L05
 
xor       r14d,r14d
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],r14
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DC7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       rbx,rax
jmp       short M01_L02
M01_L06
 
mov       ecx,1C7
mov       rdx,7FF9F5C74000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,edi
call      qword ptr [7FF9F688FFC0]
int       3
M01_L07
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F602ECB8]
int       3
M01_L08
 
mov       rcx,rsi
mov       edx,r14d
mov       r8d,edi
call      qword ptr [7FF9F5DC7150]; System.String.CreateSplitArrayOfThisAsSoleValue(System.StringSplitOptions, Int32)
mov       rcx,0ED180AA2D9E6
cmp       [rbp],rcx
je        short M01_L09
call      CORINFO_HELP_FAIL_FAST
M01_L09
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L10
 
cmp       r15d,edi
jge       near ptr M01_L01
and       r14d,0FFFFFFFD
jmp       near ptr M01_L01
M01_L11
 
call      qword ptr [7FF9F602E9D0]
int       3
M01_L12
 
mov       edi,1
jmp       near ptr M01_L00
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.DelimitedStringToArray()
push      rbx
sub       rsp,40
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+20],xmm4
xor       eax,eax
mov       [rsp+30],rax
mov       rbx,rcx
mov       rcx,[rbx+298]
test      rcx,rcx
je        short M00_L01
cmp       dword ptr [rcx+8],0
je        short M00_L01
mov       dword ptr [rsp+3C],2E
lea       rdx,[rsp+3C]
mov       [rsp+20],rdx
mov       dword ptr [rsp+28],1
lea       rdx,[rsp+20]
mov       r8d,7FFFFFFF
mov       r9d,1
call      qword ptr [7FF9F5DC70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
M00_L00
 
mov       [rsp+30],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+30]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,40
pop       rbx
ret
M00_L01
 
mov       rcx,7FF9F5D05120
mov       edx,79
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,29026C02000
mov       rax,[rcx]
jmp       short M00_L00
 
System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,98
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
vmovdqa   xmmword ptr [rbp+20],xmm4
vmovdqa   xmmword ptr [rbp+30],xmm4
vmovdqa   xmmword ptr [rbp+40],xmm4
vmovdqa   xmmword ptr [rbp+50],xmm4
mov       [rbp+60],rax
mov       rax,1E498212348F
mov       [rbp],rax
mov       rsi,rcx
mov       rbx,rdx
mov       edi,r8d
mov       r14d,r9d
test      edi,edi
jl        near ptr M01_L06
test      r14d,0FFFFFFFC
jne       near ptr M01_L07
M01_L00
 
cmp       edi,1
jle       near ptr M01_L08
mov       r15d,[rsi+8]
test      r15d,r15d
je        near ptr M01_L08
cmp       dword ptr [rbx+8],0
je        near ptr M01_L10
M01_L01
 
test      [rsp],esp
sub       rsp,200
lea       rcx,[rsp+30]
mov       [rbp+58],rcx
mov       dword ptr [rbp+60],80
xor       ecx,ecx
mov       [rbp+48],rcx
mov       [rbp+50],ecx
lea       rcx,[rsi+0C]
mov       [rbp+38],rcx
mov       [rbp+40],r15d
vmovdqu   xmm0,xmmword ptr [rbx]
vmovdqu   xmmword ptr [rbp+28],xmm0
lea       rcx,[rbp+38]
lea       rdx,[rbp+28]
lea       r8,[rbp+48]
call      qword ptr [7FF9F5DC71B0]; System.String.MakeSeparatorListAny(System.ReadOnlySpan`1, System.ReadOnlySpan`1, System.Collections.Generic.ValueListBuilder`1 ByRef)
mov       eax,[rbp+50]
cmp       eax,[rbp+60]
ja        near ptr M01_L11
mov       r10,[rbp+58]
test      eax,eax
je        near ptr M01_L12
test      r14d,r14d
je        near ptr M01_L05
xor       ecx,ecx
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],rcx
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       [rsp+28],r14d
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DC7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       rbx,rax
M01_L02
 
mov       rdx,[rbp+48]
test      rdx,rdx
je        short M01_L03
xor       ecx,ecx
mov       [rbp+48],rcx
mov       rcx,29026C01F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65C5240]; System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M01_L03
 
mov       rax,rbx
mov       rcx,1E498212348F
cmp       [rbp],rcx
je        short M01_L04
call      CORINFO_HELP_FAIL_FAST
M01_L04
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L05
 
xor       r14d,r14d
mov       [rbp+18],r10
mov       [rbp+20],eax
mov       [rbp+8],r14
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],edi
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DC7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       rbx,rax
jmp       short M01_L02
M01_L06
 
mov       ecx,1C7
mov       rdx,7FF9F5C74000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,edi
call      qword ptr [7FF9F688FBD0]
int       3
M01_L07
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F602ECB8]
int       3
M01_L08
 
mov       rcx,rsi
mov       edx,r14d
mov       r8d,edi
call      qword ptr [7FF9F5DC7150]; System.String.CreateSplitArrayOfThisAsSoleValue(System.StringSplitOptions, Int32)
mov       rcx,1E498212348F
cmp       [rbp],rcx
je        short M01_L09
call      CORINFO_HELP_FAIL_FAST
M01_L09
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L10
 
cmp       r15d,edi
jge       near ptr M01_L01
and       r14d,0FFFFFFFD
jmp       near ptr M01_L01
M01_L11
 
call      qword ptr [7FF9F602E9D0]
int       3
M01_L12
 
mov       edi,1
jmp       near ptr M01_L00
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.EqualsIgnoreCase()
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rdx,[rbx+298]
mov       rcx,rdx
test      rcx,rcx
je        short M00_L01
mov       r8d,5
call      qword ptr [7FF9F5DE61D8]; System.String.Equals(System.String, System.String, System.StringComparison)
M00_L00
 
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,20
pop       rbx
ret
M00_L01
 
xor       eax,eax
jmp       short M00_L00
 
System.String.Equals(System.String, System.String, System.StringComparison)
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,rdx
mov       edi,r8d
M01_L00
 
cmp       rbx,rsi
jne       short M01_L01
cmp       edi,5
ja        short M01_L03
mov       eax,1
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L01
 
test      rbx,rbx
je        short M01_L02
test      rsi,rsi
jne       short M01_L04
M01_L02
 
cmp       edi,5
jbe       near ptr M01_L05
M01_L03
 
mov       ecx,1B
mov       edx,29
call      qword ptr [7FF9F604ECB8]
int       3
M01_L04
 
cmp       edi,5
ja        near ptr M01_L07
mov       eax,edi
lea       rcx,[7FF9F6937CE8]
mov       ecx,[rcx+rax*4]
lea       rdx,[M01_L00]
add       rcx,rdx
jmp       rcx
call      qword ptr [7FF9F5FF4180]; System.Globalization.CultureInfo.get_CurrentCulture()
mov       rcx,rax
mov       rax,[rax]
mov       rax,[rax+48]
call      qword ptr [rax+30]
mov       rcx,rax
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F625F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       rcx,7FF9F5D25120
mov       edx,24F
call      CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
mov       rcx,1DA7B0003D8
mov       rcx,[rcx]
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F625F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       r8d,[rbx+8]
cmp       r8d,[rsi+8]
jne       short M01_L05
lea       rcx,[rbx+0C]
mov       r8d,[rbx+8]
add       r8d,r8d
lea       rdx,[rsi+0C]
call      qword ptr [7FF9F5E95068]; System.SpanHelpers.SequenceEqual(Byte ByRef, Byte ByRef, UIntPtr)
mov       ebp,eax
jmp       short M01_L08
mov       ecx,[rbx+8]
cmp       ecx,[rsi+8]
je        short M01_L06
M01_L05
 
xor       eax,eax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L06
 
mov       rcx,rbx
mov       rdx,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
jmp       qword ptr [7FF9F5DE5F80]; System.String.EqualsOrdinalIgnoreCaseNoLengthCheck(System.String, System.String)
M01_L07
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63C59C8]
mov       rbx,rax
mov       ecx,16F3
mov       rdx,7FF9F5C94000
call      CORINFO_HELP_STRCNS
mov       r8,rax
mov       rdx,rbx
mov       rcx,rdi
call      qword ptr [7FF9F5DEF750]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L08
 
movzx     eax,bpl
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.EqualsIgnoreCase()
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rdx,[rbx+298]
mov       rcx,rdx
test      rcx,rcx
je        short M00_L01
mov       r8d,5
call      qword ptr [7FF9F5DE61D8]; System.String.Equals(System.String, System.String, System.StringComparison)
M00_L00
 
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,20
pop       rbx
ret
M00_L01
 
xor       eax,eax
jmp       short M00_L00
 
System.String.Equals(System.String, System.String, System.StringComparison)
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,rdx
mov       edi,r8d
M01_L00
 
cmp       rbx,rsi
jne       short M01_L01
cmp       edi,5
ja        short M01_L03
mov       eax,1
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L01
 
test      rbx,rbx
je        short M01_L02
test      rsi,rsi
jne       short M01_L04
M01_L02
 
cmp       edi,5
jbe       near ptr M01_L05
M01_L03
 
mov       ecx,1B
mov       edx,29
call      qword ptr [7FF9F604ECB8]
int       3
M01_L04
 
cmp       edi,5
ja        near ptr M01_L07
mov       eax,edi
lea       rcx,[7FF9F6938BA8]
mov       ecx,[rcx+rax*4]
lea       rdx,[M01_L00]
add       rcx,rdx
jmp       rcx
call      qword ptr [7FF9F5FF4180]; System.Globalization.CultureInfo.get_CurrentCulture()
mov       rcx,rax
mov       rax,[rax]
mov       rax,[rax+48]
call      qword ptr [rax+30]
mov       rcx,rax
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F625F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       rcx,7FF9F5D25120
mov       edx,24F
call      CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
mov       rcx,21A620003D8
mov       rcx,[rcx]
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F625F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       r8d,[rbx+8]
cmp       r8d,[rsi+8]
jne       short M01_L05
lea       rcx,[rbx+0C]
mov       r8d,[rbx+8]
add       r8d,r8d
lea       rdx,[rsi+0C]
call      qword ptr [7FF9F5E95068]; System.SpanHelpers.SequenceEqual(Byte ByRef, Byte ByRef, UIntPtr)
mov       ebp,eax
jmp       short M01_L08
mov       ecx,[rbx+8]
cmp       ecx,[rsi+8]
je        short M01_L06
M01_L05
 
xor       eax,eax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L06
 
mov       rcx,rbx
mov       rdx,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
jmp       qword ptr [7FF9F5DE5F80]; System.String.EqualsOrdinalIgnoreCaseNoLengthCheck(System.String, System.String)
M01_L07
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63C59C8]
mov       rbx,rax
mov       ecx,16F3
mov       rdx,7FF9F5C94000
call      CORINFO_HELP_STRCNS
mov       r8,rax
mov       rdx,rbx
mov       rcx,rdi
call      qword ptr [7FF9F5DEF750]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L08
 
movzx     eax,bpl
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.EqualsIgnoreCase()
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rdx,[rbx+298]
mov       rcx,rdx
test      rcx,rcx
je        short M00_L01
mov       r8d,5
call      qword ptr [7FF9F5DC61D8]; System.String.Equals(System.String, System.String, System.StringComparison)
M00_L00
 
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,20
pop       rbx
ret
M00_L01
 
xor       eax,eax
jmp       short M00_L00
 
System.String.Equals(System.String, System.String, System.StringComparison)
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,rdx
mov       edi,r8d
M01_L00
 
cmp       rbx,rsi
jne       short M01_L01
cmp       edi,5
ja        short M01_L03
mov       eax,1
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L01
 
test      rbx,rbx
je        short M01_L02
test      rsi,rsi
jne       short M01_L04
M01_L02
 
cmp       edi,5
jbe       near ptr M01_L05
M01_L03
 
mov       ecx,1B
mov       edx,29
call      qword ptr [7FF9F602ECB8]
int       3
M01_L04
 
cmp       edi,5
ja        near ptr M01_L07
mov       eax,edi
lea       rcx,[7FF9F6919F78]
mov       ecx,[rcx+rax*4]
lea       rdx,[M01_L00]
add       rcx,rdx
jmp       rcx
call      qword ptr [7FF9F5FD4180]; System.Globalization.CultureInfo.get_CurrentCulture()
mov       rcx,rax
mov       rax,[rax]
mov       rax,[rax+48]
call      qword ptr [rax+30]
mov       rcx,rax
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F623F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       rcx,7FF9F5D05120
mov       edx,24F
call      CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
mov       rcx,1DD69C003D8
mov       rcx,[rcx]
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F623F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       r8d,[rbx+8]
cmp       r8d,[rsi+8]
jne       short M01_L05
lea       rcx,[rbx+0C]
mov       r8d,[rbx+8]
add       r8d,r8d
lea       rdx,[rsi+0C]
call      qword ptr [7FF9F5E75068]; System.SpanHelpers.SequenceEqual(Byte ByRef, Byte ByRef, UIntPtr)
mov       ebp,eax
jmp       short M01_L08
mov       ecx,[rbx+8]
cmp       ecx,[rsi+8]
je        short M01_L06
M01_L05
 
xor       eax,eax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L06
 
mov       rcx,rbx
mov       rdx,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
jmp       qword ptr [7FF9F5DC5F80]; System.String.EqualsOrdinalIgnoreCaseNoLengthCheck(System.String, System.String)
M01_L07
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63A59C8]
mov       rbx,rax
mov       ecx,16F3
mov       rdx,7FF9F5C74000
call      CORINFO_HELP_STRCNS
mov       r8,rax
mov       rdx,rbx
mov       rcx,rdi
call      qword ptr [7FF9F5DCF750]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L08
 
movzx     eax,bpl
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.EqualsIgnoreCase()
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rdx,[rbx+298]
mov       rcx,rdx
test      rcx,rcx
je        short M00_L01
mov       r8d,5
call      qword ptr [7FF9F5DE61D8]; System.String.Equals(System.String, System.String, System.StringComparison)
M00_L00
 
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,20
pop       rbx
ret
M00_L01
 
xor       eax,eax
jmp       short M00_L00
 
System.String.Equals(System.String, System.String, System.StringComparison)
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,rdx
mov       edi,r8d
M01_L00
 
cmp       rbx,rsi
jne       short M01_L01
cmp       edi,5
ja        short M01_L03
mov       eax,1
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L01
 
test      rbx,rbx
je        short M01_L02
test      rsi,rsi
jne       short M01_L04
M01_L02
 
cmp       edi,5
jbe       near ptr M01_L05
M01_L03
 
mov       ecx,1B
mov       edx,29
call      qword ptr [7FF9F604ECB8]
int       3
M01_L04
 
cmp       edi,5
ja        near ptr M01_L07
mov       eax,edi
lea       rcx,[7FF9F693A5B8]
mov       ecx,[rcx+rax*4]
lea       rdx,[M01_L00]
add       rcx,rdx
jmp       rcx
call      qword ptr [7FF9F5FF4180]; System.Globalization.CultureInfo.get_CurrentCulture()
mov       rcx,rax
mov       rax,[rax]
mov       rax,[rax+48]
call      qword ptr [rax+30]
mov       rcx,rax
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F625F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       rcx,7FF9F5D25120
mov       edx,24F
call      CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
mov       rcx,2578F4003D8
mov       rcx,[rcx]
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F625F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       r8d,[rbx+8]
cmp       r8d,[rsi+8]
jne       short M01_L05
lea       rcx,[rbx+0C]
mov       r8d,[rbx+8]
add       r8d,r8d
lea       rdx,[rsi+0C]
call      qword ptr [7FF9F5E95068]; System.SpanHelpers.SequenceEqual(Byte ByRef, Byte ByRef, UIntPtr)
mov       ebp,eax
jmp       short M01_L08
mov       ecx,[rbx+8]
cmp       ecx,[rsi+8]
je        short M01_L06
M01_L05
 
xor       eax,eax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L06
 
mov       rcx,rbx
mov       rdx,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
jmp       qword ptr [7FF9F5DE5F80]; System.String.EqualsOrdinalIgnoreCaseNoLengthCheck(System.String, System.String)
M01_L07
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63C59C8]
mov       rbx,rax
mov       ecx,16F3
mov       rdx,7FF9F5C94000
call      CORINFO_HELP_STRCNS
mov       r8,rax
mov       rdx,rbx
mov       rcx,rdi
call      qword ptr [7FF9F5DEF750]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L08
 
movzx     eax,bpl
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.EqualsIgnoreCase()
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rdx,[rbx+298]
mov       rcx,rdx
test      rcx,rcx
je        short M00_L01
mov       r8d,5
call      qword ptr [7FF9F5DD61D8]; System.String.Equals(System.String, System.String, System.StringComparison)
M00_L00
 
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,20
pop       rbx
ret
M00_L01
 
xor       eax,eax
jmp       short M00_L00
 
System.String.Equals(System.String, System.String, System.StringComparison)
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,rdx
mov       edi,r8d
M01_L00
 
cmp       rbx,rsi
jne       short M01_L01
cmp       edi,5
ja        short M01_L03
mov       eax,1
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L01
 
test      rbx,rbx
je        short M01_L02
test      rsi,rsi
jne       short M01_L04
M01_L02
 
cmp       edi,5
jbe       near ptr M01_L05
M01_L03
 
mov       ecx,1B
mov       edx,29
call      qword ptr [7FF9F603ECB8]
int       3
M01_L04
 
cmp       edi,5
ja        near ptr M01_L07
mov       eax,edi
lea       rcx,[7FF9F693A7B8]
mov       ecx,[rcx+rax*4]
lea       rdx,[M01_L00]
add       rcx,rdx
jmp       rcx
call      qword ptr [7FF9F5FE4180]; System.Globalization.CultureInfo.get_CurrentCulture()
mov       rcx,rax
mov       rax,[rax]
mov       rax,[rax+48]
call      qword ptr [rax+30]
mov       rcx,rax
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F624F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       rcx,7FF9F5D15120
mov       edx,24F
call      CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
mov       rcx,27F338003D8
mov       rcx,[rcx]
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F624F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       r8d,[rbx+8]
cmp       r8d,[rsi+8]
jne       short M01_L05
lea       rcx,[rbx+0C]
mov       r8d,[rbx+8]
add       r8d,r8d
lea       rdx,[rsi+0C]
call      qword ptr [7FF9F5E85068]; System.SpanHelpers.SequenceEqual(Byte ByRef, Byte ByRef, UIntPtr)
mov       ebp,eax
jmp       short M01_L08
mov       ecx,[rbx+8]
cmp       ecx,[rsi+8]
je        short M01_L06
M01_L05
 
xor       eax,eax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L06
 
mov       rcx,rbx
mov       rdx,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
jmp       qword ptr [7FF9F5DD5F80]; System.String.EqualsOrdinalIgnoreCaseNoLengthCheck(System.String, System.String)
M01_L07
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63B59C8]
mov       rbx,rax
mov       ecx,16F3
mov       rdx,7FF9F5C84000
call      CORINFO_HELP_STRCNS
mov       r8,rax
mov       rdx,rbx
mov       rcx,rdi
call      qword ptr [7FF9F5DDF750]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L08
 
movzx     eax,bpl
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.EqualsIgnoreCase()
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rdx,[rbx+298]
mov       rcx,rdx
test      rcx,rcx
je        short M00_L01
mov       r8d,5
call      qword ptr [7FF9F5DE61D8]; System.String.Equals(System.String, System.String, System.StringComparison)
M00_L00
 
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,20
pop       rbx
ret
M00_L01
 
xor       eax,eax
jmp       short M00_L00
 
System.String.Equals(System.String, System.String, System.StringComparison)
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,rdx
mov       edi,r8d
M01_L00
 
cmp       rbx,rsi
jne       short M01_L01
cmp       edi,5
ja        short M01_L03
mov       eax,1
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L01
 
test      rbx,rbx
je        short M01_L02
test      rsi,rsi
jne       short M01_L04
M01_L02
 
cmp       edi,5
jbe       near ptr M01_L05
M01_L03
 
mov       ecx,1B
mov       edx,29
call      qword ptr [7FF9F604ECB8]
int       3
M01_L04
 
cmp       edi,5
ja        near ptr M01_L07
mov       eax,edi
lea       rcx,[7FF9F693A578]
mov       ecx,[rcx+rax*4]
lea       rdx,[M01_L00]
add       rcx,rdx
jmp       rcx
call      qword ptr [7FF9F5FF4180]; System.Globalization.CultureInfo.get_CurrentCulture()
mov       rcx,rax
mov       rax,[rax]
mov       rax,[rax+48]
call      qword ptr [rax+30]
mov       rcx,rax
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F625F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       rcx,7FF9F5D25120
mov       edx,24F
call      CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
mov       rcx,165F10003D8
mov       rcx,[rcx]
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F625F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       r8d,[rbx+8]
cmp       r8d,[rsi+8]
jne       short M01_L05
lea       rcx,[rbx+0C]
mov       r8d,[rbx+8]
add       r8d,r8d
lea       rdx,[rsi+0C]
call      qword ptr [7FF9F5E95068]; System.SpanHelpers.SequenceEqual(Byte ByRef, Byte ByRef, UIntPtr)
mov       ebp,eax
jmp       short M01_L08
mov       ecx,[rbx+8]
cmp       ecx,[rsi+8]
je        short M01_L06
M01_L05
 
xor       eax,eax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L06
 
mov       rcx,rbx
mov       rdx,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
jmp       qword ptr [7FF9F5DE5F80]; System.String.EqualsOrdinalIgnoreCaseNoLengthCheck(System.String, System.String)
M01_L07
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63C59C8]
mov       rbx,rax
mov       ecx,16F3
mov       rdx,7FF9F5C94000
call      CORINFO_HELP_STRCNS
mov       r8,rax
mov       rdx,rbx
mov       rcx,rdi
call      qword ptr [7FF9F5DEF750]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L08
 
movzx     eax,bpl
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.EqualsIgnoreCase()
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rdx,[rbx+298]
mov       rcx,rdx
test      rcx,rcx
je        short M00_L01
mov       r8d,5
call      qword ptr [7FF9F5DB61D8]; System.String.Equals(System.String, System.String, System.StringComparison)
M00_L00
 
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,20
pop       rbx
ret
M00_L01
 
xor       eax,eax
jmp       short M00_L00
 
System.String.Equals(System.String, System.String, System.StringComparison)
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,rdx
mov       edi,r8d
M01_L00
 
cmp       rbx,rsi
jne       short M01_L01
cmp       edi,5
ja        short M01_L03
mov       eax,1
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L01
 
test      rbx,rbx
je        short M01_L02
test      rsi,rsi
jne       short M01_L04
M01_L02
 
cmp       edi,5
jbe       near ptr M01_L05
M01_L03
 
mov       ecx,1B
mov       edx,29
call      qword ptr [7FF9F601ECB8]
int       3
M01_L04
 
cmp       edi,5
ja        near ptr M01_L07
mov       eax,edi
lea       rcx,[7FF9F691A8E8]
mov       ecx,[rcx+rax*4]
lea       rdx,[M01_L00]
add       rcx,rdx
jmp       rcx
call      qword ptr [7FF9F5FC4180]; System.Globalization.CultureInfo.get_CurrentCulture()
mov       rcx,rax
mov       rax,[rax]
mov       rax,[rax+48]
call      qword ptr [rax+30]
mov       rcx,rax
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F622F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       rcx,7FF9F5CF5120
mov       edx,24F
call      CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
mov       rcx,240BB4003D8
mov       rcx,[rcx]
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F622F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       r8d,[rbx+8]
cmp       r8d,[rsi+8]
jne       short M01_L05
lea       rcx,[rbx+0C]
mov       r8d,[rbx+8]
add       r8d,r8d
lea       rdx,[rsi+0C]
call      qword ptr [7FF9F5E65068]; System.SpanHelpers.SequenceEqual(Byte ByRef, Byte ByRef, UIntPtr)
mov       ebp,eax
jmp       short M01_L08
mov       ecx,[rbx+8]
cmp       ecx,[rsi+8]
je        short M01_L06
M01_L05
 
xor       eax,eax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L06
 
mov       rcx,rbx
mov       rdx,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
jmp       qword ptr [7FF9F5DB5F80]; System.String.EqualsOrdinalIgnoreCaseNoLengthCheck(System.String, System.String)
M01_L07
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63959C8]
mov       rbx,rax
mov       ecx,16F3
mov       rdx,7FF9F5C64000
call      CORINFO_HELP_STRCNS
mov       r8,rax
mov       rdx,rbx
mov       rcx,rdi
call      qword ptr [7FF9F5DBF750]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L08
 
movzx     eax,bpl
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.EqualsIgnoreCase()
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rdx,[rbx+298]
mov       rcx,rdx
test      rcx,rcx
je        short M00_L01
mov       r8d,5
call      qword ptr [7FF9F5DC61D8]; System.String.Equals(System.String, System.String, System.StringComparison)
M00_L00
 
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,20
pop       rbx
ret
M00_L01
 
xor       eax,eax
jmp       short M00_L00
 
System.String.Equals(System.String, System.String, System.StringComparison)
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,rdx
mov       edi,r8d
M01_L00
 
cmp       rbx,rsi
jne       short M01_L01
cmp       edi,5
ja        short M01_L03
mov       eax,1
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L01
 
test      rbx,rbx
je        short M01_L02
test      rsi,rsi
jne       short M01_L04
M01_L02
 
cmp       edi,5
jbe       near ptr M01_L05
M01_L03
 
mov       ecx,1B
mov       edx,29
call      qword ptr [7FF9F602ECB8]
int       3
M01_L04
 
cmp       edi,5
ja        near ptr M01_L07
mov       eax,edi
lea       rcx,[7FF9F692A958]
mov       ecx,[rcx+rax*4]
lea       rdx,[M01_L00]
add       rcx,rdx
jmp       rcx
call      qword ptr [7FF9F5FD4180]; System.Globalization.CultureInfo.get_CurrentCulture()
mov       rcx,rax
mov       rax,[rax]
mov       rax,[rax+48]
call      qword ptr [rax+30]
mov       rcx,rax
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F623F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       rcx,7FF9F5D05120
mov       edx,24F
call      CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
mov       rcx,270208003D8
mov       rcx,[rcx]
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F623F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       r8d,[rbx+8]
cmp       r8d,[rsi+8]
jne       short M01_L05
lea       rcx,[rbx+0C]
mov       r8d,[rbx+8]
add       r8d,r8d
lea       rdx,[rsi+0C]
call      qword ptr [7FF9F5E75068]; System.SpanHelpers.SequenceEqual(Byte ByRef, Byte ByRef, UIntPtr)
mov       ebp,eax
jmp       short M01_L08
mov       ecx,[rbx+8]
cmp       ecx,[rsi+8]
je        short M01_L06
M01_L05
 
xor       eax,eax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L06
 
mov       rcx,rbx
mov       rdx,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
jmp       qword ptr [7FF9F5DC5F80]; System.String.EqualsOrdinalIgnoreCaseNoLengthCheck(System.String, System.String)
M01_L07
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63A59C8]
mov       rbx,rax
mov       ecx,16F3
mov       rdx,7FF9F5C74000
call      CORINFO_HELP_STRCNS
mov       r8,rax
mov       rdx,rbx
mov       rcx,rdi
call      qword ptr [7FF9F5DCF750]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L08
 
movzx     eax,bpl
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.EqualsOrBothNullOrEmpty()
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rdx,[rbx+298]
mov       rcx,rdx
mov       r8,2DC45160008
test      rcx,rcx
cmove     rcx,r8
test      rdx,rdx
cmove     rdx,r8
mov       r8d,4
call      qword ptr [7FF9F5DC61D8]; System.String.Equals(System.String, System.String, System.StringComparison)
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,20
pop       rbx
ret
 
System.String.Equals(System.String, System.String, System.StringComparison)
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,rdx
mov       edi,r8d
M01_L00
 
cmp       rbx,rsi
jne       short M01_L01
cmp       edi,5
ja        short M01_L03
mov       eax,1
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L01
 
test      rbx,rbx
je        short M01_L02
test      rsi,rsi
jne       short M01_L04
M01_L02
 
cmp       edi,5
jbe       near ptr M01_L05
M01_L03
 
mov       ecx,1B
mov       edx,29
call      qword ptr [7FF9F602ECB8]
int       3
M01_L04
 
cmp       edi,5
ja        near ptr M01_L07
mov       eax,edi
lea       rcx,[7FF9F69176A8]
mov       ecx,[rcx+rax*4]
lea       rdx,[M01_L00]
add       rcx,rdx
jmp       rcx
call      qword ptr [7FF9F5FD4180]; System.Globalization.CultureInfo.get_CurrentCulture()
mov       rcx,rax
mov       rax,[rax]
mov       rax,[rax+48]
call      qword ptr [rax+30]
mov       rcx,rax
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F623F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       rcx,7FF9F5D05120
mov       edx,24F
call      CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
mov       rcx,29BB30003D8
mov       rcx,[rcx]
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F623F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       r8d,[rbx+8]
cmp       r8d,[rsi+8]
jne       short M01_L05
lea       rcx,[rbx+0C]
mov       r8d,[rbx+8]
add       r8d,r8d
lea       rdx,[rsi+0C]
call      qword ptr [7FF9F5E75068]; System.SpanHelpers.SequenceEqual(Byte ByRef, Byte ByRef, UIntPtr)
mov       ebp,eax
jmp       short M01_L08
mov       ecx,[rbx+8]
cmp       ecx,[rsi+8]
je        short M01_L06
M01_L05
 
xor       eax,eax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L06
 
mov       rcx,rbx
mov       rdx,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
jmp       qword ptr [7FF9F5DC5F80]; System.String.EqualsOrdinalIgnoreCaseNoLengthCheck(System.String, System.String)
M01_L07
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63A59C8]
mov       rbx,rax
mov       ecx,16F3
mov       rdx,7FF9F5C74000
call      CORINFO_HELP_STRCNS
mov       r8,rax
mov       rdx,rbx
mov       rcx,rdi
call      qword ptr [7FF9F5DCF750]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L08
 
movzx     eax,bpl
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.EqualsOrBothNullOrEmpty()
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rdx,[rbx+298]
mov       rcx,rdx
mov       r8,21BC3710008
test      rcx,rcx
cmove     rcx,r8
test      rdx,rdx
cmove     rdx,r8
mov       r8d,4
call      qword ptr [7FF9F5DA61D8]; System.String.Equals(System.String, System.String, System.StringComparison)
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,20
pop       rbx
ret
 
System.String.Equals(System.String, System.String, System.StringComparison)
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,rdx
mov       edi,r8d
M01_L00
 
cmp       rbx,rsi
jne       short M01_L01
cmp       edi,5
ja        short M01_L03
mov       eax,1
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L01
 
test      rbx,rbx
je        short M01_L02
test      rsi,rsi
jne       short M01_L04
M01_L02
 
cmp       edi,5
jbe       near ptr M01_L05
M01_L03
 
mov       ecx,1B
mov       edx,29
call      qword ptr [7FF9F600ECB8]
int       3
M01_L04
 
cmp       edi,5
ja        near ptr M01_L07
mov       eax,edi
lea       rcx,[7FF9F68F89E8]
mov       ecx,[rcx+rax*4]
lea       rdx,[M01_L00]
add       rcx,rdx
jmp       rcx
call      qword ptr [7FF9F5FB4180]; System.Globalization.CultureInfo.get_CurrentCulture()
mov       rcx,rax
mov       rax,[rax]
mov       rax,[rax+48]
call      qword ptr [rax+30]
mov       rcx,rax
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F621F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       rcx,7FF9F5CE5120
mov       edx,24F
call      CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
mov       rcx,1DB318003D8
mov       rcx,[rcx]
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F621F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       r8d,[rbx+8]
cmp       r8d,[rsi+8]
jne       short M01_L05
lea       rcx,[rbx+0C]
mov       r8d,[rbx+8]
add       r8d,r8d
lea       rdx,[rsi+0C]
call      qword ptr [7FF9F5E55068]; System.SpanHelpers.SequenceEqual(Byte ByRef, Byte ByRef, UIntPtr)
mov       ebp,eax
jmp       short M01_L08
mov       ecx,[rbx+8]
cmp       ecx,[rsi+8]
je        short M01_L06
M01_L05
 
xor       eax,eax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L06
 
mov       rcx,rbx
mov       rdx,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
jmp       qword ptr [7FF9F5DA5F80]; System.String.EqualsOrdinalIgnoreCaseNoLengthCheck(System.String, System.String)
M01_L07
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63859C8]
mov       rbx,rax
mov       ecx,16F3
mov       rdx,7FF9F5C54000
call      CORINFO_HELP_STRCNS
mov       r8,rax
mov       rdx,rbx
mov       rcx,rdi
call      qword ptr [7FF9F5DAF750]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L08
 
movzx     eax,bpl
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.EqualsOrBothNullOrEmpty()
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rdx,[rbx+298]
mov       rcx,rdx
mov       r8,21581760008
test      rcx,rcx
cmove     rcx,r8
test      rdx,rdx
cmove     rdx,r8
mov       r8d,4
call      qword ptr [7FF9F5DE61D8]; System.String.Equals(System.String, System.String, System.StringComparison)
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,20
pop       rbx
ret
 
System.String.Equals(System.String, System.String, System.StringComparison)
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,rdx
mov       edi,r8d
M01_L00
 
cmp       rbx,rsi
jne       short M01_L01
cmp       edi,5
ja        short M01_L03
mov       eax,1
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L01
 
test      rbx,rbx
je        short M01_L02
test      rsi,rsi
jne       short M01_L04
M01_L02
 
cmp       edi,5
jbe       near ptr M01_L05
M01_L03
 
mov       ecx,1B
mov       edx,29
call      qword ptr [7FF9F604ECB8]
int       3
M01_L04
 
cmp       edi,5
ja        near ptr M01_L07
mov       eax,edi
lea       rcx,[7FF9F693A3C8]
mov       ecx,[rcx+rax*4]
lea       rdx,[M01_L00]
add       rcx,rdx
jmp       rcx
call      qword ptr [7FF9F5FF4180]; System.Globalization.CultureInfo.get_CurrentCulture()
mov       rcx,rax
mov       rax,[rax]
mov       rax,[rax+48]
call      qword ptr [rax+30]
mov       rcx,rax
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F625F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       rcx,7FF9F5D25120
mov       edx,24F
call      CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
mov       rcx,1D4F38003D8
mov       rcx,[rcx]
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F625F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       r8d,[rbx+8]
cmp       r8d,[rsi+8]
jne       short M01_L05
lea       rcx,[rbx+0C]
mov       r8d,[rbx+8]
add       r8d,r8d
lea       rdx,[rsi+0C]
call      qword ptr [7FF9F5E95068]; System.SpanHelpers.SequenceEqual(Byte ByRef, Byte ByRef, UIntPtr)
mov       ebp,eax
jmp       short M01_L08
mov       ecx,[rbx+8]
cmp       ecx,[rsi+8]
je        short M01_L06
M01_L05
 
xor       eax,eax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L06
 
mov       rcx,rbx
mov       rdx,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
jmp       qword ptr [7FF9F5DE5F80]; System.String.EqualsOrdinalIgnoreCaseNoLengthCheck(System.String, System.String)
M01_L07
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63C59C8]
mov       rbx,rax
mov       ecx,16F3
mov       rdx,7FF9F5C94000
call      CORINFO_HELP_STRCNS
mov       r8,rax
mov       rdx,rbx
mov       rcx,rdi
call      qword ptr [7FF9F5DEF750]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L08
 
movzx     eax,bpl
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.EqualsOrBothNullOrEmpty()
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rdx,[rbx+298]
mov       rcx,rdx
mov       r8,276A6650008
test      rcx,rcx
cmove     rcx,r8
test      rdx,rdx
cmove     rdx,r8
mov       r8d,4
call      qword ptr [7FF9F5DC61D8]; System.String.Equals(System.String, System.String, System.StringComparison)
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,20
pop       rbx
ret
 
System.String.Equals(System.String, System.String, System.StringComparison)
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,rdx
mov       edi,r8d
M01_L00
 
cmp       rbx,rsi
jne       short M01_L01
cmp       edi,5
ja        short M01_L03
mov       eax,1
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L01
 
test      rbx,rbx
je        short M01_L02
test      rsi,rsi
jne       short M01_L04
M01_L02
 
cmp       edi,5
jbe       near ptr M01_L05
M01_L03
 
mov       ecx,1B
mov       edx,29
call      qword ptr [7FF9F602ECB8]
int       3
M01_L04
 
cmp       edi,5
ja        near ptr M01_L07
mov       eax,edi
lea       rcx,[7FF9F691A148]
mov       ecx,[rcx+rax*4]
lea       rdx,[M01_L00]
add       rcx,rdx
jmp       rcx
call      qword ptr [7FF9F5FD4180]; System.Globalization.CultureInfo.get_CurrentCulture()
mov       rcx,rax
mov       rax,[rax]
mov       rax,[rax+48]
call      qword ptr [rax+30]
mov       rcx,rax
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F623F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       rcx,7FF9F5D05120
mov       edx,24F
call      CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
mov       rcx,236148003D8
mov       rcx,[rcx]
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F623F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       r8d,[rbx+8]
cmp       r8d,[rsi+8]
jne       short M01_L05
lea       rcx,[rbx+0C]
mov       r8d,[rbx+8]
add       r8d,r8d
lea       rdx,[rsi+0C]
call      qword ptr [7FF9F5E75068]; System.SpanHelpers.SequenceEqual(Byte ByRef, Byte ByRef, UIntPtr)
mov       ebp,eax
jmp       short M01_L08
mov       ecx,[rbx+8]
cmp       ecx,[rsi+8]
je        short M01_L06
M01_L05
 
xor       eax,eax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L06
 
mov       rcx,rbx
mov       rdx,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
jmp       qword ptr [7FF9F5DC5F80]; System.String.EqualsOrdinalIgnoreCaseNoLengthCheck(System.String, System.String)
M01_L07
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63A59C8]
mov       rbx,rax
mov       ecx,16F3
mov       rdx,7FF9F5C74000
call      CORINFO_HELP_STRCNS
mov       r8,rax
mov       rdx,rbx
mov       rcx,rdi
call      qword ptr [7FF9F5DCF750]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L08
 
movzx     eax,bpl
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.EqualsOrBothNullOrEmpty()
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rdx,[rbx+298]
mov       rcx,rdx
mov       r8,2C340160008
test      rcx,rcx
cmove     rcx,r8
test      rdx,rdx
cmove     rdx,r8
mov       r8d,4
call      qword ptr [7FF9F5DD61D8]; System.String.Equals(System.String, System.String, System.StringComparison)
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,20
pop       rbx
ret
 
System.String.Equals(System.String, System.String, System.StringComparison)
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,rdx
mov       edi,r8d
M01_L00
 
cmp       rbx,rsi
jne       short M01_L01
cmp       edi,5
ja        short M01_L03
mov       eax,1
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L01
 
test      rbx,rbx
je        short M01_L02
test      rsi,rsi
jne       short M01_L04
M01_L02
 
cmp       edi,5
jbe       near ptr M01_L05
M01_L03
 
mov       ecx,1B
mov       edx,29
call      qword ptr [7FF9F603ECB8]
int       3
M01_L04
 
cmp       edi,5
ja        near ptr M01_L07
mov       eax,edi
lea       rcx,[7FF9F693A7A8]
mov       ecx,[rcx+rax*4]
lea       rdx,[M01_L00]
add       rcx,rdx
jmp       rcx
call      qword ptr [7FF9F5FE4180]; System.Globalization.CultureInfo.get_CurrentCulture()
mov       rcx,rax
mov       rax,[rax]
mov       rax,[rax+48]
call      qword ptr [rax+30]
mov       rcx,rax
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F624F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       rcx,7FF9F5D15120
mov       edx,24F
call      CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
mov       rcx,282B20003D8
mov       rcx,[rcx]
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F624F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       r8d,[rbx+8]
cmp       r8d,[rsi+8]
jne       short M01_L05
lea       rcx,[rbx+0C]
mov       r8d,[rbx+8]
add       r8d,r8d
lea       rdx,[rsi+0C]
call      qword ptr [7FF9F5E85068]; System.SpanHelpers.SequenceEqual(Byte ByRef, Byte ByRef, UIntPtr)
mov       ebp,eax
jmp       short M01_L08
mov       ecx,[rbx+8]
cmp       ecx,[rsi+8]
je        short M01_L06
M01_L05
 
xor       eax,eax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L06
 
mov       rcx,rbx
mov       rdx,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
jmp       qword ptr [7FF9F5DD5F80]; System.String.EqualsOrdinalIgnoreCaseNoLengthCheck(System.String, System.String)
M01_L07
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63B59C8]
mov       rbx,rax
mov       ecx,16F3
mov       rdx,7FF9F5C84000
call      CORINFO_HELP_STRCNS
mov       r8,rax
mov       rdx,rbx
mov       rcx,rdi
call      qword ptr [7FF9F5DDF750]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L08
 
movzx     eax,bpl
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.EqualsOrBothNullOrEmpty()
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rdx,[rbx+298]
mov       rcx,rdx
mov       r8,2BFEF810008
test      rcx,rcx
cmove     rcx,r8
test      rdx,rdx
cmove     rdx,r8
mov       r8d,4
call      qword ptr [7FF9F5DC61D8]; System.String.Equals(System.String, System.String, System.StringComparison)
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,20
pop       rbx
ret
 
System.String.Equals(System.String, System.String, System.StringComparison)
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,rdx
mov       edi,r8d
M01_L00
 
cmp       rbx,rsi
jne       short M01_L01
cmp       edi,5
ja        short M01_L03
mov       eax,1
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L01
 
test      rbx,rbx
je        short M01_L02
test      rsi,rsi
jne       short M01_L04
M01_L02
 
cmp       edi,5
jbe       near ptr M01_L05
M01_L03
 
mov       ecx,1B
mov       edx,29
call      qword ptr [7FF9F602ECB8]
int       3
M01_L04
 
cmp       edi,5
ja        near ptr M01_L07
mov       eax,edi
lea       rcx,[7FF9F691AFE8]
mov       ecx,[rcx+rax*4]
lea       rdx,[M01_L00]
add       rcx,rdx
jmp       rcx
call      qword ptr [7FF9F5FD4180]; System.Globalization.CultureInfo.get_CurrentCulture()
mov       rcx,rax
mov       rax,[rax]
mov       rax,[rax+48]
call      qword ptr [rax+30]
mov       rcx,rax
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F624E8F8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       rcx,7FF9F5D05120
mov       edx,24F
call      CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
mov       rcx,27F5D8003D8
mov       rcx,[rcx]
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F624E8F8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       r8d,[rbx+8]
cmp       r8d,[rsi+8]
jne       short M01_L05
lea       rcx,[rbx+0C]
mov       r8d,[rbx+8]
add       r8d,r8d
lea       rdx,[rsi+0C]
call      qword ptr [7FF9F5E75068]; System.SpanHelpers.SequenceEqual(Byte ByRef, Byte ByRef, UIntPtr)
mov       ebp,eax
jmp       short M01_L08
mov       ecx,[rbx+8]
cmp       ecx,[rsi+8]
je        short M01_L06
M01_L05
 
xor       eax,eax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L06
 
mov       rcx,rbx
mov       rdx,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
jmp       qword ptr [7FF9F5DC5F80]; System.String.EqualsOrdinalIgnoreCaseNoLengthCheck(System.String, System.String)
M01_L07
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63A5338]
mov       rbx,rax
mov       ecx,16F3
mov       rdx,7FF9F5C74000
call      CORINFO_HELP_STRCNS
mov       r8,rax
mov       rdx,rbx
mov       rcx,rdi
call      qword ptr [7FF9F5DCF750]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L08
 
movzx     eax,bpl
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.EqualsOrBothNullOrEmpty()
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rdx,[rbx+298]
mov       rcx,rdx
mov       r8,2A636350008
test      rcx,rcx
cmove     rcx,r8
test      rdx,rdx
cmove     rdx,r8
mov       r8d,4
call      qword ptr [7FF9F5DD61D8]; System.String.Equals(System.String, System.String, System.StringComparison)
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,20
pop       rbx
ret
 
System.String.Equals(System.String, System.String, System.StringComparison)
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,rdx
mov       edi,r8d
M01_L00
 
cmp       rbx,rsi
jne       short M01_L01
cmp       edi,5
ja        short M01_L03
mov       eax,1
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L01
 
test      rbx,rbx
je        short M01_L02
test      rsi,rsi
jne       short M01_L04
M01_L02
 
cmp       edi,5
jbe       near ptr M01_L05
M01_L03
 
mov       ecx,1B
mov       edx,29
call      qword ptr [7FF9F603ECB8]
int       3
M01_L04
 
cmp       edi,5
ja        near ptr M01_L07
mov       eax,edi
lea       rcx,[7FF9F692A9D8]
mov       ecx,[rcx+rax*4]
lea       rdx,[M01_L00]
add       rcx,rdx
jmp       rcx
call      qword ptr [7FF9F5FE4180]; System.Globalization.CultureInfo.get_CurrentCulture()
mov       rcx,rax
mov       rax,[rax]
mov       rax,[rax+48]
call      qword ptr [rax+30]
mov       rcx,rax
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F624F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       rcx,7FF9F5D15120
mov       edx,24F
call      CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
mov       rcx,265A44003D8
mov       rcx,[rcx]
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F624F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       r8d,[rbx+8]
cmp       r8d,[rsi+8]
jne       short M01_L05
lea       rcx,[rbx+0C]
mov       r8d,[rbx+8]
add       r8d,r8d
lea       rdx,[rsi+0C]
call      qword ptr [7FF9F5E85068]; System.SpanHelpers.SequenceEqual(Byte ByRef, Byte ByRef, UIntPtr)
mov       ebp,eax
jmp       short M01_L08
mov       ecx,[rbx+8]
cmp       ecx,[rsi+8]
je        short M01_L06
M01_L05
 
xor       eax,eax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L06
 
mov       rcx,rbx
mov       rdx,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
jmp       qword ptr [7FF9F5DD5F80]; System.String.EqualsOrdinalIgnoreCaseNoLengthCheck(System.String, System.String)
M01_L07
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63B59C8]
mov       rbx,rax
mov       ecx,16F3
mov       rdx,7FF9F5C84000
call      CORINFO_HELP_STRCNS
mov       r8,rax
mov       rdx,rbx
mov       rcx,rdi
call      qword ptr [7FF9F5DDF750]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L08
 
movzx     eax,bpl
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.EqualsOrBothNullOrEmpty()
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rdx,[rbx+298]
mov       rcx,rdx
mov       r8,22C6BDB0008
test      rcx,rcx
cmove     rcx,r8
test      rdx,rdx
cmove     rdx,r8
mov       r8d,4
call      qword ptr [7FF9F5DC61D8]; System.String.Equals(System.String, System.String, System.StringComparison)
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,20
pop       rbx
ret
 
System.String.Equals(System.String, System.String, System.StringComparison)
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,rdx
mov       edi,r8d
M01_L00
 
cmp       rbx,rsi
jne       short M01_L01
cmp       edi,5
ja        short M01_L03
mov       eax,1
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L01
 
test      rbx,rbx
je        short M01_L02
test      rsi,rsi
jne       short M01_L04
M01_L02
 
cmp       edi,5
jbe       near ptr M01_L05
M01_L03
 
mov       ecx,1B
mov       edx,29
call      qword ptr [7FF9F602ECB8]
int       3
M01_L04
 
cmp       edi,5
ja        near ptr M01_L07
mov       eax,edi
lea       rcx,[7FF9F691A908]
mov       ecx,[rcx+rax*4]
lea       rdx,[M01_L00]
add       rcx,rdx
jmp       rcx
call      qword ptr [7FF9F5FD4180]; System.Globalization.CultureInfo.get_CurrentCulture()
mov       rcx,rax
mov       rax,[rax]
mov       rax,[rax+48]
call      qword ptr [rax+30]
mov       rcx,rax
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F623F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       rcx,7FF9F5D05120
mov       edx,24F
call      CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
mov       rcx,1EBDA0003D8
mov       rcx,[rcx]
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F623F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       r8d,[rbx+8]
cmp       r8d,[rsi+8]
jne       short M01_L05
lea       rcx,[rbx+0C]
mov       r8d,[rbx+8]
add       r8d,r8d
lea       rdx,[rsi+0C]
call      qword ptr [7FF9F5E75068]; System.SpanHelpers.SequenceEqual(Byte ByRef, Byte ByRef, UIntPtr)
mov       ebp,eax
jmp       short M01_L08
mov       ecx,[rbx+8]
cmp       ecx,[rsi+8]
je        short M01_L06
M01_L05
 
xor       eax,eax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L06
 
mov       rcx,rbx
mov       rdx,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
jmp       qword ptr [7FF9F5DC5F80]; System.String.EqualsOrdinalIgnoreCaseNoLengthCheck(System.String, System.String)
M01_L07
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63A59C8]
mov       rbx,rax
mov       ecx,16F3
mov       rdx,7FF9F5C74000
call      CORINFO_HELP_STRCNS
mov       r8,rax
mov       rdx,rbx
mov       rcx,rdi
call      qword ptr [7FF9F5DCF750]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L08
 
movzx     eax,bpl
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.FastCompare()
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rcx,[rbx+298]
mov       rdx,[rbx+290]
mov       r8d,4
call      qword ptr [7FF9F5DC61D8]; System.String.Equals(System.String, System.String, System.StringComparison)
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,20
pop       rbx
ret
 
System.String.Equals(System.String, System.String, System.StringComparison)
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,rdx
mov       edi,r8d
M01_L00
 
cmp       rbx,rsi
jne       short M01_L01
cmp       edi,5
ja        short M01_L03
mov       eax,1
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L01
 
test      rbx,rbx
je        short M01_L02
test      rsi,rsi
jne       short M01_L04
M01_L02
 
cmp       edi,5
jbe       near ptr M01_L05
M01_L03
 
mov       ecx,1B
mov       edx,29
call      qword ptr [7FF9F602ECB8]
int       3
M01_L04
 
cmp       edi,5
ja        near ptr M01_L07
mov       eax,edi
lea       rcx,[7FF9F6917C68]
mov       ecx,[rcx+rax*4]
lea       rdx,[M01_L00]
add       rcx,rdx
jmp       rcx
call      qword ptr [7FF9F5FD4180]; System.Globalization.CultureInfo.get_CurrentCulture()
mov       rcx,rax
mov       rax,[rax]
mov       rax,[rax+48]
call      qword ptr [rax+30]
mov       rcx,rax
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F623F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       rcx,7FF9F5D05120
mov       edx,24F
call      CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
mov       rcx,235520003D8
mov       rcx,[rcx]
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F623F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       r8d,[rbx+8]
cmp       r8d,[rsi+8]
jne       short M01_L05
lea       rcx,[rbx+0C]
mov       r8d,[rbx+8]
add       r8d,r8d
lea       rdx,[rsi+0C]
call      qword ptr [7FF9F5E75068]; System.SpanHelpers.SequenceEqual(Byte ByRef, Byte ByRef, UIntPtr)
mov       ebp,eax
jmp       short M01_L08
mov       ecx,[rbx+8]
cmp       ecx,[rsi+8]
je        short M01_L06
M01_L05
 
xor       eax,eax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L06
 
mov       rcx,rbx
mov       rdx,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
jmp       qword ptr [7FF9F5DC5F80]; System.String.EqualsOrdinalIgnoreCaseNoLengthCheck(System.String, System.String)
M01_L07
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63A59C8]
mov       rbx,rax
mov       ecx,16F3
mov       rdx,7FF9F5C74000
call      CORINFO_HELP_STRCNS
mov       r8,rax
mov       rdx,rbx
mov       rcx,rdi
call      qword ptr [7FF9F5DCF750]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L08
 
movzx     eax,bpl
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.FastCompare()
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rcx,[rbx+298]
mov       rdx,[rbx+290]
mov       r8d,4
call      qword ptr [7FF9F5DC61D8]; System.String.Equals(System.String, System.String, System.StringComparison)
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,20
pop       rbx
ret
 
System.String.Equals(System.String, System.String, System.StringComparison)
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,rdx
mov       edi,r8d
M01_L00
 
cmp       rbx,rsi
jne       short M01_L01
cmp       edi,5
ja        short M01_L03
mov       eax,1
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L01
 
test      rbx,rbx
je        short M01_L02
test      rsi,rsi
jne       short M01_L04
M01_L02
 
cmp       edi,5
jbe       near ptr M01_L05
M01_L03
 
mov       ecx,1B
mov       edx,29
call      qword ptr [7FF9F602ECB8]
int       3
M01_L04
 
cmp       edi,5
ja        near ptr M01_L07
mov       eax,edi
lea       rcx,[7FF9F6918948]
mov       ecx,[rcx+rax*4]
lea       rdx,[M01_L00]
add       rcx,rdx
jmp       rcx
call      qword ptr [7FF9F5FD4180]; System.Globalization.CultureInfo.get_CurrentCulture()
mov       rcx,rax
mov       rax,[rax]
mov       rax,[rax+48]
call      qword ptr [rax+30]
mov       rcx,rax
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F623F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       rcx,7FF9F5D05120
mov       edx,24F
call      CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
mov       rcx,1554C4003D8
mov       rcx,[rcx]
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F623F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       r8d,[rbx+8]
cmp       r8d,[rsi+8]
jne       short M01_L05
lea       rcx,[rbx+0C]
mov       r8d,[rbx+8]
add       r8d,r8d
lea       rdx,[rsi+0C]
call      qword ptr [7FF9F5E75068]; System.SpanHelpers.SequenceEqual(Byte ByRef, Byte ByRef, UIntPtr)
mov       ebp,eax
jmp       short M01_L08
mov       ecx,[rbx+8]
cmp       ecx,[rsi+8]
je        short M01_L06
M01_L05
 
xor       eax,eax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L06
 
mov       rcx,rbx
mov       rdx,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
jmp       qword ptr [7FF9F5DC5F80]; System.String.EqualsOrdinalIgnoreCaseNoLengthCheck(System.String, System.String)
M01_L07
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63A59C8]
mov       rbx,rax
mov       ecx,16F3
mov       rdx,7FF9F5C74000
call      CORINFO_HELP_STRCNS
mov       r8,rax
mov       rdx,rbx
mov       rcx,rdi
call      qword ptr [7FF9F5DCF750]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L08
 
movzx     eax,bpl
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.FastCompare()
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rcx,[rbx+298]
mov       rdx,[rbx+290]
mov       r8d,4
call      qword ptr [7FF9F5DD61D8]; System.String.Equals(System.String, System.String, System.StringComparison)
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,20
pop       rbx
ret
 
System.String.Equals(System.String, System.String, System.StringComparison)
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,rdx
mov       edi,r8d
M01_L00
 
cmp       rbx,rsi
jne       short M01_L01
cmp       edi,5
ja        short M01_L03
mov       eax,1
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L01
 
test      rbx,rbx
je        short M01_L02
test      rsi,rsi
jne       short M01_L04
M01_L02
 
cmp       edi,5
jbe       near ptr M01_L05
M01_L03
 
mov       ecx,1B
mov       edx,29
call      qword ptr [7FF9F603ECB8]
int       3
M01_L04
 
cmp       edi,5
ja        near ptr M01_L07
mov       eax,edi
lea       rcx,[7FF9F692A008]
mov       ecx,[rcx+rax*4]
lea       rdx,[M01_L00]
add       rcx,rdx
jmp       rcx
call      qword ptr [7FF9F5FE4180]; System.Globalization.CultureInfo.get_CurrentCulture()
mov       rcx,rax
mov       rax,[rax]
mov       rax,[rax+48]
call      qword ptr [rax+30]
mov       rcx,rax
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F624F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       rcx,7FF9F5D15120
mov       edx,24F
call      CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
mov       rcx,1312F0003D8
mov       rcx,[rcx]
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F624F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       r8d,[rbx+8]
cmp       r8d,[rsi+8]
jne       short M01_L05
lea       rcx,[rbx+0C]
mov       r8d,[rbx+8]
add       r8d,r8d
lea       rdx,[rsi+0C]
call      qword ptr [7FF9F5E85068]; System.SpanHelpers.SequenceEqual(Byte ByRef, Byte ByRef, UIntPtr)
mov       ebp,eax
jmp       short M01_L08
mov       ecx,[rbx+8]
cmp       ecx,[rsi+8]
je        short M01_L06
M01_L05
 
xor       eax,eax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L06
 
mov       rcx,rbx
mov       rdx,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
jmp       qword ptr [7FF9F5DD5F80]; System.String.EqualsOrdinalIgnoreCaseNoLengthCheck(System.String, System.String)
M01_L07
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63B59C8]
mov       rbx,rax
mov       ecx,16F3
mov       rdx,7FF9F5C84000
call      CORINFO_HELP_STRCNS
mov       r8,rax
mov       rdx,rbx
mov       rcx,rdi
call      qword ptr [7FF9F5DDF750]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L08
 
movzx     eax,bpl
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.FastCompare()
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rcx,[rbx+298]
mov       rdx,[rbx+290]
mov       r8d,4
call      qword ptr [7FF9F5DD61D8]; System.String.Equals(System.String, System.String, System.StringComparison)
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,20
pop       rbx
ret
 
System.String.Equals(System.String, System.String, System.StringComparison)
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,rdx
mov       edi,r8d
M01_L00
 
cmp       rbx,rsi
jne       short M01_L01
cmp       edi,5
ja        short M01_L03
mov       eax,1
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L01
 
test      rbx,rbx
je        short M01_L02
test      rsi,rsi
jne       short M01_L04
M01_L02
 
cmp       edi,5
jbe       near ptr M01_L05
M01_L03
 
mov       ecx,1B
mov       edx,29
call      qword ptr [7FF9F603ECB8]
int       3
M01_L04
 
cmp       edi,5
ja        near ptr M01_L07
mov       eax,edi
lea       rcx,[7FF9F692A4B8]
mov       ecx,[rcx+rax*4]
lea       rdx,[M01_L00]
add       rcx,rdx
jmp       rcx
call      qword ptr [7FF9F5FE4180]; System.Globalization.CultureInfo.get_CurrentCulture()
mov       rcx,rax
mov       rax,[rax]
mov       rax,[rax+48]
call      qword ptr [rax+30]
mov       rcx,rax
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F624F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       rcx,7FF9F5D15120
mov       edx,24F
call      CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
mov       rcx,1C07F8003D8
mov       rcx,[rcx]
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F624F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       r8d,[rbx+8]
cmp       r8d,[rsi+8]
jne       short M01_L05
lea       rcx,[rbx+0C]
mov       r8d,[rbx+8]
add       r8d,r8d
lea       rdx,[rsi+0C]
call      qword ptr [7FF9F5E85068]; System.SpanHelpers.SequenceEqual(Byte ByRef, Byte ByRef, UIntPtr)
mov       ebp,eax
jmp       short M01_L08
mov       ecx,[rbx+8]
cmp       ecx,[rsi+8]
je        short M01_L06
M01_L05
 
xor       eax,eax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L06
 
mov       rcx,rbx
mov       rdx,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
jmp       qword ptr [7FF9F5DD5F80]; System.String.EqualsOrdinalIgnoreCaseNoLengthCheck(System.String, System.String)
M01_L07
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63B59C8]
mov       rbx,rax
mov       ecx,16F3
mov       rdx,7FF9F5C84000
call      CORINFO_HELP_STRCNS
mov       r8,rax
mov       rdx,rbx
mov       rcx,rdi
call      qword ptr [7FF9F5DDF750]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L08
 
movzx     eax,bpl
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.FastCompare()
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rcx,[rbx+298]
mov       rdx,[rbx+290]
mov       r8d,4
call      qword ptr [7FF9F5DB61D8]; System.String.Equals(System.String, System.String, System.StringComparison)
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,20
pop       rbx
ret
 
System.String.Equals(System.String, System.String, System.StringComparison)
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,rdx
mov       edi,r8d
M01_L00
 
cmp       rbx,rsi
jne       short M01_L01
cmp       edi,5
ja        short M01_L03
mov       eax,1
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L01
 
test      rbx,rbx
je        short M01_L02
test      rsi,rsi
jne       short M01_L04
M01_L02
 
cmp       edi,5
jbe       near ptr M01_L05
M01_L03
 
mov       ecx,1B
mov       edx,29
call      qword ptr [7FF9F601ECB8]
int       3
M01_L04
 
cmp       edi,5
ja        near ptr M01_L07
mov       eax,edi
lea       rcx,[7FF9F691A648]
mov       ecx,[rcx+rax*4]
lea       rdx,[M01_L00]
add       rcx,rdx
jmp       rcx
call      qword ptr [7FF9F5FC4180]; System.Globalization.CultureInfo.get_CurrentCulture()
mov       rcx,rax
mov       rax,[rax]
mov       rax,[rax+48]
call      qword ptr [rax+30]
mov       rcx,rax
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F622F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       rcx,7FF9F5CF5120
mov       edx,24F
call      CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
mov       rcx,1D69DC003D8
mov       rcx,[rcx]
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F622F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       r8d,[rbx+8]
cmp       r8d,[rsi+8]
jne       short M01_L05
lea       rcx,[rbx+0C]
mov       r8d,[rbx+8]
add       r8d,r8d
lea       rdx,[rsi+0C]
call      qword ptr [7FF9F5E65068]; System.SpanHelpers.SequenceEqual(Byte ByRef, Byte ByRef, UIntPtr)
mov       ebp,eax
jmp       short M01_L08
mov       ecx,[rbx+8]
cmp       ecx,[rsi+8]
je        short M01_L06
M01_L05
 
xor       eax,eax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L06
 
mov       rcx,rbx
mov       rdx,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
jmp       qword ptr [7FF9F5DB5F80]; System.String.EqualsOrdinalIgnoreCaseNoLengthCheck(System.String, System.String)
M01_L07
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63959C8]
mov       rbx,rax
mov       ecx,16F3
mov       rdx,7FF9F5C64000
call      CORINFO_HELP_STRCNS
mov       r8,rax
mov       rdx,rbx
mov       rcx,rdi
call      qword ptr [7FF9F5DBF750]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L08
 
movzx     eax,bpl
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.FastCompare()
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rcx,[rbx+298]
mov       rdx,[rbx+290]
mov       r8d,4
call      qword ptr [7FF9F5DC61D8]; System.String.Equals(System.String, System.String, System.StringComparison)
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,20
pop       rbx
ret
 
System.String.Equals(System.String, System.String, System.StringComparison)
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,rdx
mov       edi,r8d
M01_L00
 
cmp       rbx,rsi
jne       short M01_L01
cmp       edi,5
ja        short M01_L03
mov       eax,1
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L01
 
test      rbx,rbx
je        short M01_L02
test      rsi,rsi
jne       short M01_L04
M01_L02
 
cmp       edi,5
jbe       near ptr M01_L05
M01_L03
 
mov       ecx,1B
mov       edx,29
call      qword ptr [7FF9F602ECB8]
int       3
M01_L04
 
cmp       edi,5
ja        near ptr M01_L07
mov       eax,edi
lea       rcx,[7FF9F6917918]
mov       ecx,[rcx+rax*4]
lea       rdx,[M01_L00]
add       rcx,rdx
jmp       rcx
call      qword ptr [7FF9F5FD4180]; System.Globalization.CultureInfo.get_CurrentCulture()
mov       rcx,rax
mov       rax,[rax]
mov       rax,[rax+48]
call      qword ptr [rax+30]
mov       rcx,rax
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F623F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       rcx,7FF9F5D05120
mov       edx,24F
call      CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
mov       rcx,169464003D8
mov       rcx,[rcx]
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F623F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       r8d,[rbx+8]
cmp       r8d,[rsi+8]
jne       short M01_L05
lea       rcx,[rbx+0C]
mov       r8d,[rbx+8]
add       r8d,r8d
lea       rdx,[rsi+0C]
call      qword ptr [7FF9F5E75068]; System.SpanHelpers.SequenceEqual(Byte ByRef, Byte ByRef, UIntPtr)
mov       ebp,eax
jmp       short M01_L08
mov       ecx,[rbx+8]
cmp       ecx,[rsi+8]
je        short M01_L06
M01_L05
 
xor       eax,eax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L06
 
mov       rcx,rbx
mov       rdx,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
jmp       qword ptr [7FF9F5DC5F80]; System.String.EqualsOrdinalIgnoreCaseNoLengthCheck(System.String, System.String)
M01_L07
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63A59C8]
mov       rbx,rax
mov       ecx,16F3
mov       rdx,7FF9F5C74000
call      CORINFO_HELP_STRCNS
mov       r8,rax
mov       rdx,rbx
mov       rcx,rdi
call      qword ptr [7FF9F5DCF750]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L08
 
movzx     eax,bpl
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.FastCompare()
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rcx,[rbx+298]
mov       rdx,[rbx+290]
mov       r8d,4
call      qword ptr [7FF9F5DC61D8]; System.String.Equals(System.String, System.String, System.StringComparison)
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,20
pop       rbx
ret
 
System.String.Equals(System.String, System.String, System.StringComparison)
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,rdx
mov       edi,r8d
M01_L00
 
cmp       rbx,rsi
jne       short M01_L01
cmp       edi,5
ja        short M01_L03
mov       eax,1
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L01
 
test      rbx,rbx
je        short M01_L02
test      rsi,rsi
jne       short M01_L04
M01_L02
 
cmp       edi,5
jbe       near ptr M01_L05
M01_L03
 
mov       ecx,1B
mov       edx,29
call      qword ptr [7FF9F602ECB8]
int       3
M01_L04
 
cmp       edi,5
ja        near ptr M01_L07
mov       eax,edi
lea       rcx,[7FF9F692A818]
mov       ecx,[rcx+rax*4]
lea       rdx,[M01_L00]
add       rcx,rdx
jmp       rcx
call      qword ptr [7FF9F5FD4180]; System.Globalization.CultureInfo.get_CurrentCulture()
mov       rcx,rax
mov       rax,[rax]
mov       rax,[rax+48]
call      qword ptr [rax+30]
mov       rcx,rax
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F623F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       rcx,7FF9F5D05120
mov       edx,24F
call      CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
mov       rcx,1AD6CC003D8
mov       rcx,[rcx]
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F623F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       r8d,[rbx+8]
cmp       r8d,[rsi+8]
jne       short M01_L05
lea       rcx,[rbx+0C]
mov       r8d,[rbx+8]
add       r8d,r8d
lea       rdx,[rsi+0C]
call      qword ptr [7FF9F5E75068]; System.SpanHelpers.SequenceEqual(Byte ByRef, Byte ByRef, UIntPtr)
mov       ebp,eax
jmp       short M01_L08
mov       ecx,[rbx+8]
cmp       ecx,[rsi+8]
je        short M01_L06
M01_L05
 
xor       eax,eax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L06
 
mov       rcx,rbx
mov       rdx,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
jmp       qword ptr [7FF9F5DC5F80]; System.String.EqualsOrdinalIgnoreCaseNoLengthCheck(System.String, System.String)
M01_L07
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63A59C8]
mov       rbx,rax
mov       ecx,16F3
mov       rdx,7FF9F5C74000
call      CORINFO_HELP_STRCNS
mov       r8,rax
mov       rdx,rbx
mov       rcx,rdi
call      qword ptr [7FF9F5DCF750]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L08
 
movzx     eax,bpl
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.FastCompare()
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rcx,[rbx+298]
mov       rdx,[rbx+290]
mov       r8d,4
call      qword ptr [7FF9F5DC61D8]; System.String.Equals(System.String, System.String, System.StringComparison)
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,20
pop       rbx
ret
 
System.String.Equals(System.String, System.String, System.StringComparison)
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,rdx
mov       edi,r8d
M01_L00
 
cmp       rbx,rsi
jne       short M01_L01
cmp       edi,5
ja        short M01_L03
mov       eax,1
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L01
 
test      rbx,rbx
je        short M01_L02
test      rsi,rsi
jne       short M01_L04
M01_L02
 
cmp       edi,5
jbe       near ptr M01_L05
M01_L03
 
mov       ecx,1B
mov       edx,29
call      qword ptr [7FF9F602ECB8]
int       3
M01_L04
 
cmp       edi,5
ja        near ptr M01_L07
mov       eax,edi
lea       rcx,[7FF9F692A768]
mov       ecx,[rcx+rax*4]
lea       rdx,[M01_L00]
add       rcx,rdx
jmp       rcx
call      qword ptr [7FF9F5FD4180]; System.Globalization.CultureInfo.get_CurrentCulture()
mov       rcx,rax
mov       rax,[rax]
mov       rax,[rax+48]
call      qword ptr [rax+30]
mov       rcx,rax
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F623F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       rcx,7FF9F5D05120
mov       edx,24F
call      CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
mov       rcx,233D80003D8
mov       rcx,[rcx]
mov       r9d,edi
and       r9d,1
mov       rdx,rbx
mov       r8,rsi
cmp       [rcx],ecx
call      qword ptr [7FF9F623F8E8]; System.Globalization.CompareInfo.Compare(System.String, System.String, System.Globalization.CompareOptions)
xor       ebp,ebp
test      eax,eax
sete      bpl
jmp       near ptr M01_L08
mov       r8d,[rbx+8]
cmp       r8d,[rsi+8]
jne       short M01_L05
lea       rcx,[rbx+0C]
mov       r8d,[rbx+8]
add       r8d,r8d
lea       rdx,[rsi+0C]
call      qword ptr [7FF9F5E75068]; System.SpanHelpers.SequenceEqual(Byte ByRef, Byte ByRef, UIntPtr)
mov       ebp,eax
jmp       short M01_L08
mov       ecx,[rbx+8]
cmp       ecx,[rsi+8]
je        short M01_L06
M01_L05
 
xor       eax,eax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L06
 
mov       rcx,rbx
mov       rdx,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
jmp       qword ptr [7FF9F5DC5F80]; System.String.EqualsOrdinalIgnoreCaseNoLengthCheck(System.String, System.String)
M01_L07
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63A59C8]
mov       rbx,rax
mov       ecx,16F3
mov       rdx,7FF9F5C74000
call      CORINFO_HELP_STRCNS
mov       r8,rax
mov       rdx,rbx
mov       rcx,rdi
call      qword ptr [7FF9F5DCF750]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L08
 
movzx     eax,bpl
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.FromBase64()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rcx,[rbx+280]
call      qword ptr [7FF9F62CCF48]; DotNetTips.Spargine.Extensions.StringExtensions.FromBase64(System.String)
mov       [rsp+28],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.StringExtensions.FromBase64(System.String)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,88
lea       rbp,[rsp+0C0]
xor       eax,eax
mov       [rbp-78],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-70],xmm4
vmovdqa   xmmword ptr [rbp-60],xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
mov       [rbp-40],rax
mov       rbx,rcx
test      rbx,rbx
je        near ptr M01_L23
mov       rcx,offset MT_System.CharEnumerator
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       dword ptr [rsi+10],0FFFFFFFF
lea       rcx,[rsi+8]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
mov       edx,[rsi+10]
inc       edx
mov       rcx,[rsi+8]
mov       ecx,[rcx+8]
cmp       edx,ecx
jge       near ptr M01_L10
mov       [rsi+10],edx
mov       rcx,1B17980EF30
mov       rdi,[rcx]
lea       rdx,[rbx+0C]
mov       [rbp-40],rdx
mov       r14,[rbp-40]
mov       ebx,[rbx+8]
test      ebx,ebx
jle       short M01_L02
M01_L00
 
lea       edx,[rbx-1]
movsxd    rcx,edx
movzx     ecx,word ptr [r14+rcx*2]
cmp       ecx,20
je        short M01_L01
cmp       ecx,0A
je        short M01_L01
cmp       ecx,0D
je        short M01_L01
cmp       ecx,9
jne       short M01_L02
M01_L01
 
mov       ebx,edx
test      ebx,ebx
jg        short M01_L00
M01_L02
 
mov       rdx,r14
movsxd    rcx,ebx
lea       rsi,[rdx+rcx*2]
mov       ecx,ebx
xor       r15d,r15d
cmp       r14,rsi
jae       short M01_L05
nop       dword ptr [rax]
M01_L03
 
movzx     eax,word ptr [rdx]
add       rdx,2
cmp       eax,20
jbe       near ptr M01_L11
cmp       eax,3D
je        near ptr M01_L09
M01_L04
 
cmp       rdx,rsi
jb        short M01_L03
M01_L05
 
test      r15d,r15d
je        short M01_L06
cmp       r15d,1
je        near ptr M01_L12
cmp       r15d,2
jne       near ptr M01_L13
mov       r15d,1
M01_L06
 
mov       edx,ecx
sar       edx,1F
and       edx,3
add       edx,ecx
sar       edx,2
lea       edx,[rdx+rdx*2]
add       edx,r15d
movsxd    rdx,edx
mov       rcx,offset MT_System.Byte[]
call      CORINFO_HELP_NEWARR_1_VC
mov       rsi,rax
test      ebx,ebx
jl        near ptr M01_L14
lea       rcx,[rsi+10]
mov       edx,[rsi+8]
mov       [rbp-68],r14
mov       [rbp-60],ebx
mov       [rbp-78],rcx
mov       [rbp-70],edx
lea       rcx,[rbp-68]
lea       rdx,[rbp-78]
lea       r8,[rbp-48]
call      qword ptr [7FF9F6164720]; System.Convert.TryFromBase64Chars(System.ReadOnlySpan`1, System.Span`1, Int32 ByRef)
test      eax,eax
je        near ptr M01_L15
xor       ecx,ecx
mov       [rbp-40],rcx
mov       ebx,[rsi+8]
test      ebx,ebx
je        near ptr M01_L16
mov       [rbp-50],rsi
mov       rcx,[rbp-50]
cmp       dword ptr [rcx+8],0
je        short M01_L08
mov       rcx,[rbp-50]
cmp       dword ptr [rcx+8],0
jbe       near ptr M01_L29
mov       rsi,[rbp-50]
add       rsi,10
M01_L07
 
test      rsi,rsi
je        near ptr M01_L17
mov       rcx,[rdi+18]
mov       r14d,ebx
test      rcx,rcx
je        near ptr M01_L24
mov       rax,offset MT_System.Text.DecoderReplacementFallback
cmp       [rcx],rax
jne       near ptr M01_L24
mov       rcx,[rcx+8]
cmp       dword ptr [rcx+8],1
jne       near ptr M01_L24
jmp       near ptr M01_L18
M01_L08
 
xor       esi,esi
jmp       short M01_L07
M01_L09
 
dec       ecx
inc       r15d
jmp       near ptr M01_L04
M01_L10
 
mov       [rsi+10],ecx
jmp       near ptr M01_L23
M01_L11
 
dec       ecx
jmp       near ptr M01_L04
M01_L12
 
mov       r15d,2
jmp       near ptr M01_L06
M01_L13
 
mov       rcx,offset MT_System.FormatException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63C44B0]
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F60C74B0]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L14
 
call      qword ptr [7FF9F604E9D0]
int       3
M01_L15
 
mov       rcx,offset MT_System.FormatException
call      CORINFO_HELP_NEWSFAST
mov       r13,rax
call      qword ptr [7FF9F63C44B0]
mov       rdx,rax
mov       rcx,r13
call      qword ptr [7FF9F60C74B0]
mov       rcx,r13
call      CORINFO_HELP_THROW
M01_L16
 
mov       rax,1F20B8E0008
jmp       short M01_L21
M01_L17
 
mov       ecx,0A
mov       edx,31
call      qword ptr [7FF9F604ED18]
int       3
M01_L18
 
mov       r13d,r14d
cmp       r14d,ebx
jne       near ptr M01_L25
M01_L19
 
test      r13d,r13d
je        short M01_L22
mov       ecx,r13d
call      System.String.FastAllocateString(Int32)
mov       r14,rax
cmp       [r14],r14b
lea       r8,[r14+0C]
mov       [rbp-58],r8
mov       r12,[rbp-58]
test      r12,r12
je        near ptr M01_L26
mov       r8d,ebx
or        r8d,r13d
jl        near ptr M01_L27
cmp       r13d,ebx
mov       r8d,ebx
cmovle    r8d,r13d
mov       rcx,rsi
mov       rdx,r12
call      qword ptr [7FF9F604C660]; System.Text.Ascii.WidenAsciiToUtf16(Byte*, Char*, UIntPtr)
cmp       eax,ebx
jne       near ptr M01_L28
M01_L20
 
xor       eax,eax
mov       [rbp-58],rax
mov       rax,r14
M01_L21
 
add       rsp,88
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L22
 
mov       rax,1F20B8E0008
jmp       short M01_L21
M01_L23
 
mov       rax,1F20B8E0008
add       rsp,88
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L24
 
mov       edx,ebx
mov       rcx,rsi
call      qword ptr [7FF9F604C468]; System.Text.Ascii.GetIndexOfFirstNonAsciiByte_Vector(Byte*, UIntPtr)
mov       r14d,eax
mov       r13d,r14d
cmp       r14d,ebx
je        near ptr M01_L19
M01_L25
 
mov       rcx,rdi
mov       rdx,rsi
mov       r8d,ebx
mov       r9d,r13d
call      qword ptr [7FF9F5DEC990]
add       eax,r13d
mov       r13d,eax
test      r13d,r13d
jge       near ptr M01_L19
call      qword ptr [7FF9F5DEC7E0]
int       3
M01_L26
 
mov       ecx,0E
mov       edx,31
call      qword ptr [7FF9F604ED18]
int       3
M01_L27
 
mov       ecx,10
mov       edx,0D
call      qword ptr [7FF9F604ED48]
int       3
M01_L28
 
mov       [rsp+20],r13d
mov       [rsp+28],eax
mov       [rsp+30],eax
mov       dword ptr [rsp+38],1
mov       rcx,rdi
mov       rdx,rsi
mov       r8d,ebx
mov       r9,r12
call      qword ptr [7FF9F5DECA08]
jmp       near ptr M01_L20
M01_L29
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.FromBase64()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rcx,[rbx+280]
call      qword ptr [7FF9F62ACF48]; DotNetTips.Spargine.Extensions.StringExtensions.FromBase64(System.String)
mov       [rsp+28],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.StringExtensions.FromBase64(System.String)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,88
lea       rbp,[rsp+0C0]
xor       eax,eax
mov       [rbp-78],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-70],xmm4
vmovdqa   xmmword ptr [rbp-60],xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
mov       [rbp-40],rax
mov       rbx,rcx
test      rbx,rbx
je        near ptr M01_L23
mov       rcx,offset MT_System.CharEnumerator
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       dword ptr [rsi+10],0FFFFFFFF
lea       rcx,[rsi+8]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
mov       edx,[rsi+10]
inc       edx
mov       rcx,[rsi+8]
mov       ecx,[rcx+8]
cmp       edx,ecx
jge       near ptr M01_L10
mov       [rsi+10],edx
mov       rcx,235BE80EF30
mov       rdi,[rcx]
lea       rdx,[rbx+0C]
mov       [rbp-40],rdx
mov       r14,[rbp-40]
mov       ebx,[rbx+8]
test      ebx,ebx
jle       short M01_L02
M01_L00
 
lea       edx,[rbx-1]
movsxd    rcx,edx
movzx     ecx,word ptr [r14+rcx*2]
cmp       ecx,20
je        short M01_L01
cmp       ecx,0A
je        short M01_L01
cmp       ecx,0D
je        short M01_L01
cmp       ecx,9
jne       short M01_L02
M01_L01
 
mov       ebx,edx
test      ebx,ebx
jg        short M01_L00
M01_L02
 
mov       rdx,r14
movsxd    rcx,ebx
lea       rsi,[rdx+rcx*2]
mov       ecx,ebx
xor       r15d,r15d
cmp       r14,rsi
jae       short M01_L05
nop       dword ptr [rax]
M01_L03
 
movzx     eax,word ptr [rdx]
add       rdx,2
cmp       eax,20
jbe       near ptr M01_L11
cmp       eax,3D
je        near ptr M01_L09
M01_L04
 
cmp       rdx,rsi
jb        short M01_L03
M01_L05
 
test      r15d,r15d
je        short M01_L06
cmp       r15d,1
je        near ptr M01_L12
cmp       r15d,2
jne       near ptr M01_L13
mov       r15d,1
M01_L06
 
mov       edx,ecx
sar       edx,1F
and       edx,3
add       edx,ecx
sar       edx,2
lea       edx,[rdx+rdx*2]
add       edx,r15d
movsxd    rdx,edx
mov       rcx,offset MT_System.Byte[]
call      CORINFO_HELP_NEWARR_1_VC
mov       rsi,rax
test      ebx,ebx
jl        near ptr M01_L14
lea       rcx,[rsi+10]
mov       edx,[rsi+8]
mov       [rbp-68],r14
mov       [rbp-60],ebx
mov       [rbp-78],rcx
mov       [rbp-70],edx
lea       rcx,[rbp-68]
lea       rdx,[rbp-78]
lea       r8,[rbp-48]
call      qword ptr [7FF9F6144720]; System.Convert.TryFromBase64Chars(System.ReadOnlySpan`1, System.Span`1, Int32 ByRef)
test      eax,eax
je        near ptr M01_L15
xor       ecx,ecx
mov       [rbp-40],rcx
mov       ebx,[rsi+8]
test      ebx,ebx
je        near ptr M01_L16
mov       [rbp-50],rsi
mov       rcx,[rbp-50]
cmp       dword ptr [rcx+8],0
je        short M01_L08
mov       rcx,[rbp-50]
cmp       dword ptr [rcx+8],0
jbe       near ptr M01_L29
mov       rsi,[rbp-50]
add       rsi,10
M01_L07
 
test      rsi,rsi
je        near ptr M01_L17
mov       rcx,[rdi+18]
mov       r14d,ebx
test      rcx,rcx
je        near ptr M01_L24
mov       rax,offset MT_System.Text.DecoderReplacementFallback
cmp       [rcx],rax
jne       near ptr M01_L24
mov       rcx,[rcx+8]
cmp       dword ptr [rcx+8],1
jne       near ptr M01_L24
jmp       near ptr M01_L18
M01_L08
 
xor       esi,esi
jmp       short M01_L07
M01_L09
 
dec       ecx
inc       r15d
jmp       near ptr M01_L04
M01_L10
 
mov       [rsi+10],ecx
jmp       near ptr M01_L23
M01_L11
 
dec       ecx
jmp       near ptr M01_L04
M01_L12
 
mov       r15d,2
jmp       near ptr M01_L06
M01_L13
 
mov       rcx,offset MT_System.FormatException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63A44B0]
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F60A74B0]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L14
 
call      qword ptr [7FF9F602E9D0]
int       3
M01_L15
 
mov       rcx,offset MT_System.FormatException
call      CORINFO_HELP_NEWSFAST
mov       r13,rax
call      qword ptr [7FF9F63A44B0]
mov       rdx,rax
mov       rcx,r13
call      qword ptr [7FF9F60A74B0]
mov       rcx,r13
call      CORINFO_HELP_THROW
M01_L16
 
mov       rax,27650580008
jmp       short M01_L21
M01_L17
 
mov       ecx,0A
mov       edx,31
call      qword ptr [7FF9F602ED18]
int       3
M01_L18
 
mov       r13d,r14d
cmp       r14d,ebx
jne       near ptr M01_L25
M01_L19
 
test      r13d,r13d
je        short M01_L22
mov       ecx,r13d
call      System.String.FastAllocateString(Int32)
mov       r14,rax
cmp       [r14],r14b
lea       r8,[r14+0C]
mov       [rbp-58],r8
mov       r12,[rbp-58]
test      r12,r12
je        near ptr M01_L26
mov       r8d,ebx
or        r8d,r13d
jl        near ptr M01_L27
cmp       r13d,ebx
mov       r8d,ebx
cmovle    r8d,r13d
mov       rcx,rsi
mov       rdx,r12
call      qword ptr [7FF9F602C660]; System.Text.Ascii.WidenAsciiToUtf16(Byte*, Char*, UIntPtr)
cmp       eax,ebx
jne       near ptr M01_L28
M01_L20
 
xor       eax,eax
mov       [rbp-58],rax
mov       rax,r14
M01_L21
 
add       rsp,88
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L22
 
mov       rax,27650580008
jmp       short M01_L21
M01_L23
 
mov       rax,27650580008
add       rsp,88
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L24
 
mov       edx,ebx
mov       rcx,rsi
call      qword ptr [7FF9F602C468]; System.Text.Ascii.GetIndexOfFirstNonAsciiByte_Vector(Byte*, UIntPtr)
mov       r14d,eax
mov       r13d,r14d
cmp       r14d,ebx
je        near ptr M01_L19
M01_L25
 
mov       rcx,rdi
mov       rdx,rsi
mov       r8d,ebx
mov       r9d,r13d
call      qword ptr [7FF9F5DCC990]
add       eax,r13d
mov       r13d,eax
test      r13d,r13d
jge       near ptr M01_L19
call      qword ptr [7FF9F5DCC7E0]
int       3
M01_L26
 
mov       ecx,0E
mov       edx,31
call      qword ptr [7FF9F602ED18]
int       3
M01_L27
 
mov       ecx,10
mov       edx,0D
call      qword ptr [7FF9F602ED48]
int       3
M01_L28
 
mov       [rsp+20],r13d
mov       [rsp+28],eax
mov       [rsp+30],eax
mov       dword ptr [rsp+38],1
mov       rcx,rdi
mov       rdx,rsi
mov       r8d,ebx
mov       r9,r12
call      qword ptr [7FF9F5DCCA08]
jmp       near ptr M01_L20
M01_L29
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.FromBase64()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rcx,[rbx+280]
call      qword ptr [7FF9F629CF48]; DotNetTips.Spargine.Extensions.StringExtensions.FromBase64(System.String)
mov       [rsp+28],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.StringExtensions.FromBase64(System.String)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,88
lea       rbp,[rsp+0C0]
xor       eax,eax
mov       [rbp-78],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-70],xmm4
vmovdqa   xmmword ptr [rbp-60],xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
mov       [rbp-40],rax
mov       rbx,rcx
test      rbx,rbx
je        near ptr M01_L23
mov       rcx,offset MT_System.CharEnumerator
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       dword ptr [rsi+10],0FFFFFFFF
lea       rcx,[rsi+8]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
mov       edx,[rsi+10]
inc       edx
mov       rcx,[rsi+8]
mov       ecx,[rcx+8]
cmp       edx,ecx
jge       near ptr M01_L09
mov       [rsi+10],edx
mov       rcx,2A0C1C0CF38
mov       rdi,[rcx]
lea       rdx,[rbx+0C]
mov       [rbp-40],rdx
mov       r14,[rbp-40]
mov       ebx,[rbx+8]
test      ebx,ebx
jle       short M01_L02
M01_L00
 
lea       edx,[rbx-1]
movsxd    rcx,edx
movzx     ecx,word ptr [r14+rcx*2]
cmp       ecx,20
je        short M01_L01
cmp       ecx,0A
je        short M01_L01
cmp       ecx,0D
je        short M01_L01
cmp       ecx,9
jne       short M01_L02
M01_L01
 
mov       ebx,edx
test      ebx,ebx
jg        short M01_L00
M01_L02
 
mov       rdx,r14
movsxd    rcx,ebx
lea       rsi,[rdx+rcx*2]
mov       ecx,ebx
xor       r15d,r15d
cmp       r14,rsi
jae       short M01_L05
nop       dword ptr [rax]
M01_L03
 
movzx     eax,word ptr [rdx]
add       rdx,2
cmp       eax,20
jbe       near ptr M01_L10
cmp       eax,3D
je        near ptr M01_L08
M01_L04
 
cmp       rdx,rsi
jb        short M01_L03
M01_L05
 
test      r15d,r15d
je        short M01_L06
cmp       r15d,1
je        near ptr M01_L11
cmp       r15d,2
jne       near ptr M01_L12
mov       r15d,1
M01_L06
 
mov       edx,ecx
sar       edx,1F
and       edx,3
add       edx,ecx
sar       edx,2
lea       edx,[rdx+rdx*2]
add       edx,r15d
movsxd    rdx,edx
mov       rcx,offset MT_System.Byte[]
call      CORINFO_HELP_NEWARR_1_VC
mov       rsi,rax
test      ebx,ebx
jl        near ptr M01_L13
lea       rcx,[rsi+10]
mov       edx,[rsi+8]
mov       [rbp-68],r14
mov       [rbp-60],ebx
mov       [rbp-78],rcx
mov       [rbp-70],edx
lea       rcx,[rbp-68]
lea       rdx,[rbp-78]
lea       r8,[rbp-48]
call      qword ptr [7FF9F6134720]; System.Convert.TryFromBase64Chars(System.ReadOnlySpan`1, System.Span`1, Int32 ByRef)
test      eax,eax
je        near ptr M01_L14
xor       ecx,ecx
mov       [rbp-40],rcx
mov       ebx,[rsi+8]
test      ebx,ebx
je        near ptr M01_L15
mov       [rbp-50],rsi
mov       rcx,[rbp-50]
cmp       dword ptr [rcx+8],0
je        near ptr M01_L16
mov       rcx,[rbp-50]
cmp       dword ptr [rcx+8],0
jbe       near ptr M01_L29
mov       rsi,[rbp-50]
add       rsi,10
M01_L07
 
test      rsi,rsi
je        near ptr M01_L17
mov       rcx,[rdi+18]
mov       r14d,ebx
test      rcx,rcx
je        near ptr M01_L24
mov       rax,offset MT_System.Text.DecoderReplacementFallback
cmp       [rcx],rax
jne       near ptr M01_L24
mov       rcx,[rcx+8]
cmp       dword ptr [rcx+8],1
jne       near ptr M01_L24
jmp       near ptr M01_L18
M01_L08
 
dec       ecx
inc       r15d
jmp       near ptr M01_L04
M01_L09
 
mov       [rsi+10],ecx
jmp       near ptr M01_L23
M01_L10
 
dec       ecx
jmp       near ptr M01_L04
M01_L11
 
mov       r15d,2
jmp       near ptr M01_L06
M01_L12
 
mov       rcx,offset MT_System.FormatException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63944B0]
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F60974B0]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L13
 
call      qword ptr [7FF9F601E9D0]
int       3
M01_L14
 
mov       rcx,offset MT_System.FormatException
call      CORINFO_HELP_NEWSFAST
mov       r13,rax
call      qword ptr [7FF9F63944B0]
mov       rdx,rax
mov       rcx,r13
call      qword ptr [7FF9F60974B0]
mov       rcx,r13
call      CORINFO_HELP_THROW
M01_L15
 
mov       rax,2E153AC0008
jmp       near ptr M01_L21
M01_L16
 
xor       esi,esi
jmp       near ptr M01_L07
M01_L17
 
mov       ecx,0A
mov       edx,31
call      qword ptr [7FF9F601ED18]
int       3
M01_L18
 
mov       r13d,r14d
cmp       r14d,ebx
jne       near ptr M01_L25
M01_L19
 
test      r13d,r13d
je        short M01_L22
mov       ecx,r13d
call      System.String.FastAllocateString(Int32)
mov       r14,rax
cmp       [r14],r14b
lea       r8,[r14+0C]
mov       [rbp-58],r8
mov       r12,[rbp-58]
test      r12,r12
je        near ptr M01_L26
mov       r8d,ebx
or        r8d,r13d
jl        near ptr M01_L27
cmp       r13d,ebx
mov       r8d,ebx
cmovle    r8d,r13d
mov       rcx,rsi
mov       rdx,r12
call      qword ptr [7FF9F601C660]; System.Text.Ascii.WidenAsciiToUtf16(Byte*, Char*, UIntPtr)
cmp       eax,ebx
jne       near ptr M01_L28
M01_L20
 
xor       eax,eax
mov       [rbp-58],rax
mov       rax,r14
M01_L21
 
add       rsp,88
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L22
 
mov       rax,2E153AC0008
jmp       short M01_L21
M01_L23
 
mov       rax,2E153AC0008
add       rsp,88
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L24
 
mov       edx,ebx
mov       rcx,rsi
call      qword ptr [7FF9F601C468]; System.Text.Ascii.GetIndexOfFirstNonAsciiByte_Vector(Byte*, UIntPtr)
mov       r14d,eax
mov       r13d,r14d
cmp       r14d,ebx
je        near ptr M01_L19
M01_L25
 
mov       rcx,rdi
mov       rdx,rsi
mov       r8d,ebx
mov       r9d,r13d
call      qword ptr [7FF9F5DBC990]
add       eax,r13d
mov       r13d,eax
test      r13d,r13d
jge       near ptr M01_L19
call      qword ptr [7FF9F5DBC7E0]
int       3
M01_L26
 
mov       ecx,0E
mov       edx,31
call      qword ptr [7FF9F601ED18]
int       3
M01_L27
 
mov       ecx,10
mov       edx,0D
call      qword ptr [7FF9F601ED48]
int       3
M01_L28
 
mov       [rsp+20],r13d
mov       [rsp+28],eax
mov       [rsp+30],eax
mov       dword ptr [rsp+38],1
mov       rcx,rdi
mov       rdx,rsi
mov       r8d,ebx
mov       r9,r12
call      qword ptr [7FF9F5DBCA08]
jmp       near ptr M01_L20
M01_L29
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.FromBase64()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rcx,[rbx+280]
call      qword ptr [7FF9F62CCF48]; DotNetTips.Spargine.Extensions.StringExtensions.FromBase64(System.String)
mov       [rsp+28],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.StringExtensions.FromBase64(System.String)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,88
lea       rbp,[rsp+0C0]
xor       eax,eax
mov       [rbp-78],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-70],xmm4
vmovdqa   xmmword ptr [rbp-60],xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
mov       [rbp-40],rax
mov       rbx,rcx
test      rbx,rbx
je        near ptr M01_L23
mov       rcx,offset MT_System.CharEnumerator
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       dword ptr [rsi+10],0FFFFFFFF
lea       rcx,[rsi+8]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
mov       edx,[rsi+10]
inc       edx
mov       rcx,[rsi+8]
mov       ecx,[rcx+8]
cmp       edx,ecx
jge       near ptr M01_L09
mov       [rsi+10],edx
mov       rcx,2464AC0EF30
mov       rdi,[rcx]
lea       rdx,[rbx+0C]
mov       [rbp-40],rdx
mov       r14,[rbp-40]
mov       ebx,[rbx+8]
test      ebx,ebx
jle       short M01_L02
M01_L00
 
lea       edx,[rbx-1]
movsxd    rcx,edx
movzx     ecx,word ptr [r14+rcx*2]
cmp       ecx,20
je        short M01_L01
cmp       ecx,0A
je        short M01_L01
cmp       ecx,0D
je        short M01_L01
cmp       ecx,9
jne       short M01_L02
M01_L01
 
mov       ebx,edx
test      ebx,ebx
jg        short M01_L00
M01_L02
 
mov       rdx,r14
movsxd    rcx,ebx
lea       rsi,[rdx+rcx*2]
mov       ecx,ebx
xor       r15d,r15d
cmp       r14,rsi
jae       short M01_L05
nop       dword ptr [rax]
M01_L03
 
movzx     eax,word ptr [rdx]
add       rdx,2
cmp       eax,20
jbe       near ptr M01_L10
cmp       eax,3D
je        near ptr M01_L08
M01_L04
 
cmp       rdx,rsi
jb        short M01_L03
M01_L05
 
test      r15d,r15d
je        short M01_L06
cmp       r15d,1
je        near ptr M01_L11
cmp       r15d,2
jne       near ptr M01_L12
mov       r15d,1
M01_L06
 
mov       edx,ecx
sar       edx,1F
and       edx,3
add       edx,ecx
sar       edx,2
lea       edx,[rdx+rdx*2]
add       edx,r15d
movsxd    rdx,edx
mov       rcx,offset MT_System.Byte[]
call      CORINFO_HELP_NEWARR_1_VC
mov       rsi,rax
test      ebx,ebx
jl        near ptr M01_L13
lea       rcx,[rsi+10]
mov       edx,[rsi+8]
mov       [rbp-68],r14
mov       [rbp-60],ebx
mov       [rbp-78],rcx
mov       [rbp-70],edx
lea       rcx,[rbp-68]
lea       rdx,[rbp-78]
lea       r8,[rbp-48]
call      qword ptr [7FF9F6164720]; System.Convert.TryFromBase64Chars(System.ReadOnlySpan`1, System.Span`1, Int32 ByRef)
test      eax,eax
je        near ptr M01_L14
xor       ecx,ecx
mov       [rbp-40],rcx
mov       ebx,[rsi+8]
test      ebx,ebx
je        near ptr M01_L15
mov       [rbp-50],rsi
mov       rcx,[rbp-50]
cmp       dword ptr [rcx+8],0
je        near ptr M01_L16
mov       rcx,[rbp-50]
cmp       dword ptr [rcx+8],0
jbe       near ptr M01_L29
mov       rsi,[rbp-50]
add       rsi,10
M01_L07
 
test      rsi,rsi
je        near ptr M01_L17
mov       rcx,[rdi+18]
mov       r14d,ebx
test      rcx,rcx
je        near ptr M01_L24
mov       rax,offset MT_System.Text.DecoderReplacementFallback
cmp       [rcx],rax
jne       near ptr M01_L24
mov       rcx,[rcx+8]
cmp       dword ptr [rcx+8],1
jne       near ptr M01_L24
jmp       near ptr M01_L18
M01_L08
 
dec       ecx
inc       r15d
jmp       near ptr M01_L04
M01_L09
 
mov       [rsi+10],ecx
jmp       near ptr M01_L23
M01_L10
 
dec       ecx
jmp       near ptr M01_L04
M01_L11
 
mov       r15d,2
jmp       near ptr M01_L06
M01_L12
 
mov       rcx,offset MT_System.FormatException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63C44B0]
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F60C74B0]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L13
 
call      qword ptr [7FF9F604E9D0]
int       3
M01_L14
 
mov       rcx,offset MT_System.FormatException
call      CORINFO_HELP_NEWSFAST
mov       r13,rax
call      qword ptr [7FF9F63C44B0]
mov       rdx,rax
mov       rcx,r13
call      qword ptr [7FF9F60C74B0]
mov       rcx,r13
call      CORINFO_HELP_THROW
M01_L15
 
mov       rax,286DC9D0008
jmp       near ptr M01_L21
M01_L16
 
xor       esi,esi
jmp       near ptr M01_L07
M01_L17
 
mov       ecx,0A
mov       edx,31
call      qword ptr [7FF9F604ED18]
int       3
M01_L18
 
mov       r13d,r14d
cmp       r14d,ebx
jne       near ptr M01_L25
M01_L19
 
test      r13d,r13d
je        short M01_L22
mov       ecx,r13d
call      System.String.FastAllocateString(Int32)
mov       r14,rax
cmp       [r14],r14b
lea       r8,[r14+0C]
mov       [rbp-58],r8
mov       r12,[rbp-58]
test      r12,r12
je        near ptr M01_L26
mov       r8d,ebx
or        r8d,r13d
jl        near ptr M01_L27
cmp       r13d,ebx
mov       r8d,ebx
cmovle    r8d,r13d
mov       rcx,rsi
mov       rdx,r12
call      qword ptr [7FF9F604C660]; System.Text.Ascii.WidenAsciiToUtf16(Byte*, Char*, UIntPtr)
cmp       eax,ebx
jne       near ptr M01_L28
M01_L20
 
xor       eax,eax
mov       [rbp-58],rax
mov       rax,r14
M01_L21
 
add       rsp,88
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L22
 
mov       rax,286DC9D0008
jmp       short M01_L21
M01_L23
 
mov       rax,286DC9D0008
add       rsp,88
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L24
 
mov       edx,ebx
mov       rcx,rsi
call      qword ptr [7FF9F604C468]; System.Text.Ascii.GetIndexOfFirstNonAsciiByte_Vector(Byte*, UIntPtr)
mov       r14d,eax
mov       r13d,r14d
cmp       r14d,ebx
je        near ptr M01_L19
M01_L25
 
mov       rcx,rdi
mov       rdx,rsi
mov       r8d,ebx
mov       r9d,r13d
call      qword ptr [7FF9F5DEC990]
add       eax,r13d
mov       r13d,eax
test      r13d,r13d
jge       near ptr M01_L19
call      qword ptr [7FF9F5DEC7E0]
int       3
M01_L26
 
mov       ecx,0E
mov       edx,31
call      qword ptr [7FF9F604ED18]
int       3
M01_L27
 
mov       ecx,10
mov       edx,0D
call      qword ptr [7FF9F604ED48]
int       3
M01_L28
 
mov       [rsp+20],r13d
mov       [rsp+28],eax
mov       [rsp+30],eax
mov       dword ptr [rsp+38],1
mov       rcx,rdi
mov       rdx,rsi
mov       r8d,ebx
mov       r9,r12
call      qword ptr [7FF9F5DECA08]
jmp       near ptr M01_L20
M01_L29
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.FromBase64()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rcx,[rbx+280]
call      qword ptr [7FF9F629CF48]; DotNetTips.Spargine.Extensions.StringExtensions.FromBase64(System.String)
mov       [rsp+28],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.StringExtensions.FromBase64(System.String)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,88
lea       rbp,[rsp+0C0]
xor       eax,eax
mov       [rbp-78],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-70],xmm4
vmovdqa   xmmword ptr [rbp-60],xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
mov       [rbp-40],rax
mov       rbx,rcx
test      rbx,rbx
je        near ptr M01_L23
mov       rcx,offset MT_System.CharEnumerator
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       dword ptr [rsi+10],0FFFFFFFF
lea       rcx,[rsi+8]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
mov       edx,[rsi+10]
inc       edx
mov       rcx,[rsi+8]
mov       ecx,[rcx+8]
cmp       edx,ecx
jge       near ptr M01_L09
mov       [rsi+10],edx
mov       rcx,2860C00EF30
mov       rdi,[rcx]
lea       rdx,[rbx+0C]
mov       [rbp-40],rdx
mov       r14,[rbp-40]
mov       ebx,[rbx+8]
test      ebx,ebx
jle       short M01_L02
M01_L00
 
lea       edx,[rbx-1]
movsxd    rcx,edx
movzx     ecx,word ptr [r14+rcx*2]
cmp       ecx,20
je        short M01_L01
cmp       ecx,0A
je        short M01_L01
cmp       ecx,0D
je        short M01_L01
cmp       ecx,9
jne       short M01_L02
M01_L01
 
mov       ebx,edx
test      ebx,ebx
jg        short M01_L00
M01_L02
 
mov       rdx,r14
movsxd    rcx,ebx
lea       rsi,[rdx+rcx*2]
mov       ecx,ebx
xor       r15d,r15d
cmp       r14,rsi
jae       short M01_L05
nop       dword ptr [rax]
M01_L03
 
movzx     eax,word ptr [rdx]
add       rdx,2
cmp       eax,20
jbe       near ptr M01_L10
cmp       eax,3D
je        near ptr M01_L08
M01_L04
 
cmp       rdx,rsi
jb        short M01_L03
M01_L05
 
test      r15d,r15d
je        short M01_L06
cmp       r15d,1
je        near ptr M01_L11
cmp       r15d,2
jne       near ptr M01_L12
mov       r15d,1
M01_L06
 
mov       edx,ecx
sar       edx,1F
and       edx,3
add       edx,ecx
sar       edx,2
lea       edx,[rdx+rdx*2]
add       edx,r15d
movsxd    rdx,edx
mov       rcx,offset MT_System.Byte[]
call      CORINFO_HELP_NEWARR_1_VC
mov       rsi,rax
test      ebx,ebx
jl        near ptr M01_L13
lea       rcx,[rsi+10]
mov       edx,[rsi+8]
mov       [rbp-68],r14
mov       [rbp-60],ebx
mov       [rbp-78],rcx
mov       [rbp-70],edx
lea       rcx,[rbp-68]
lea       rdx,[rbp-78]
lea       r8,[rbp-48]
call      qword ptr [7FF9F6134720]; System.Convert.TryFromBase64Chars(System.ReadOnlySpan`1, System.Span`1, Int32 ByRef)
test      eax,eax
je        near ptr M01_L14
xor       ecx,ecx
mov       [rbp-40],rcx
mov       ebx,[rsi+8]
test      ebx,ebx
je        near ptr M01_L15
mov       [rbp-50],rsi
mov       rcx,[rbp-50]
cmp       dword ptr [rcx+8],0
je        near ptr M01_L16
mov       rcx,[rbp-50]
cmp       dword ptr [rcx+8],0
jbe       near ptr M01_L29
mov       rsi,[rbp-50]
add       rsi,10
M01_L07
 
test      rsi,rsi
je        near ptr M01_L17
mov       rcx,[rdi+18]
mov       r14d,ebx
test      rcx,rcx
je        near ptr M01_L24
mov       rax,offset MT_System.Text.DecoderReplacementFallback
cmp       [rcx],rax
jne       near ptr M01_L24
mov       rcx,[rcx+8]
cmp       dword ptr [rcx+8],1
jne       near ptr M01_L24
jmp       near ptr M01_L18
M01_L08
 
dec       ecx
inc       r15d
jmp       near ptr M01_L04
M01_L09
 
mov       [rsi+10],ecx
jmp       near ptr M01_L23
M01_L10
 
dec       ecx
jmp       near ptr M01_L04
M01_L11
 
mov       r15d,2
jmp       near ptr M01_L06
M01_L12
 
mov       rcx,offset MT_System.FormatException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63944B0]
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F60974B0]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L13
 
call      qword ptr [7FF9F601E9D0]
int       3
M01_L14
 
mov       rcx,offset MT_System.FormatException
call      CORINFO_HELP_NEWSFAST
mov       r13,rax
call      qword ptr [7FF9F63944B0]
mov       rdx,rax
mov       rcx,r13
call      qword ptr [7FF9F60974B0]
mov       rcx,r13
call      CORINFO_HELP_THROW
M01_L15
 
mov       rax,2C699EA0008
jmp       near ptr M01_L21
M01_L16
 
xor       esi,esi
jmp       near ptr M01_L07
M01_L17
 
mov       ecx,0A
mov       edx,31
call      qword ptr [7FF9F601ED18]
int       3
M01_L18
 
mov       r13d,r14d
cmp       r14d,ebx
jne       near ptr M01_L25
M01_L19
 
test      r13d,r13d
je        short M01_L22
mov       ecx,r13d
call      System.String.FastAllocateString(Int32)
mov       r14,rax
cmp       [r14],r14b
lea       r8,[r14+0C]
mov       [rbp-58],r8
mov       r12,[rbp-58]
test      r12,r12
je        near ptr M01_L26
mov       r8d,ebx
or        r8d,r13d
jl        near ptr M01_L27
cmp       r13d,ebx
mov       r8d,ebx
cmovle    r8d,r13d
mov       rcx,rsi
mov       rdx,r12
call      qword ptr [7FF9F601C660]; System.Text.Ascii.WidenAsciiToUtf16(Byte*, Char*, UIntPtr)
cmp       eax,ebx
jne       near ptr M01_L28
M01_L20
 
xor       eax,eax
mov       [rbp-58],rax
mov       rax,r14
M01_L21
 
add       rsp,88
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L22
 
mov       rax,2C699EA0008
jmp       short M01_L21
M01_L23
 
mov       rax,2C699EA0008
add       rsp,88
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L24
 
mov       edx,ebx
mov       rcx,rsi
call      qword ptr [7FF9F601C468]; System.Text.Ascii.GetIndexOfFirstNonAsciiByte_Vector(Byte*, UIntPtr)
mov       r14d,eax
mov       r13d,r14d
cmp       r14d,ebx
je        near ptr M01_L19
M01_L25
 
mov       rcx,rdi
mov       rdx,rsi
mov       r8d,ebx
mov       r9d,r13d
call      qword ptr [7FF9F5DBC990]
add       eax,r13d
mov       r13d,eax
test      r13d,r13d
jge       near ptr M01_L19
call      qword ptr [7FF9F5DBC7E0]
int       3
M01_L26
 
mov       ecx,0E
mov       edx,31
call      qword ptr [7FF9F601ED18]
int       3
M01_L27
 
mov       ecx,10
mov       edx,0D
call      qword ptr [7FF9F601ED48]
int       3
M01_L28
 
mov       [rsp+20],r13d
mov       [rsp+28],eax
mov       [rsp+30],eax
mov       dword ptr [rsp+38],1
mov       rcx,rdi
mov       rdx,rsi
mov       r8d,ebx
mov       r9,r12
call      qword ptr [7FF9F5DBCA08]
jmp       near ptr M01_L20
M01_L29
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.FromBase64()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rcx,[rbx+280]
call      qword ptr [7FF9F629CF48]; DotNetTips.Spargine.Extensions.StringExtensions.FromBase64(System.String)
mov       [rsp+28],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.StringExtensions.FromBase64(System.String)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,88
lea       rbp,[rsp+0C0]
xor       eax,eax
mov       [rbp-78],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-70],xmm4
vmovdqa   xmmword ptr [rbp-60],xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
mov       [rbp-40],rax
mov       rbx,rcx
test      rbx,rbx
je        near ptr M01_L23
mov       rcx,offset MT_System.CharEnumerator
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       dword ptr [rsi+10],0FFFFFFFF
lea       rcx,[rsi+8]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
mov       edx,[rsi+10]
inc       edx
mov       rcx,[rsi+8]
mov       ecx,[rcx+8]
cmp       edx,ecx
jge       near ptr M01_L09
mov       [rsi+10],edx
mov       rcx,1FBB4C0CF38
mov       rdi,[rcx]
lea       rdx,[rbx+0C]
mov       [rbp-40],rdx
mov       r14,[rbp-40]
mov       ebx,[rbx+8]
test      ebx,ebx
jle       short M01_L02
M01_L00
 
lea       edx,[rbx-1]
movsxd    rcx,edx
movzx     ecx,word ptr [r14+rcx*2]
cmp       ecx,20
je        short M01_L01
cmp       ecx,0A
je        short M01_L01
cmp       ecx,0D
je        short M01_L01
cmp       ecx,9
jne       short M01_L02
M01_L01
 
mov       ebx,edx
test      ebx,ebx
jg        short M01_L00
M01_L02
 
mov       rdx,r14
movsxd    rcx,ebx
lea       rsi,[rdx+rcx*2]
mov       ecx,ebx
xor       r15d,r15d
cmp       r14,rsi
jae       short M01_L05
nop       dword ptr [rax]
M01_L03
 
movzx     eax,word ptr [rdx]
add       rdx,2
cmp       eax,20
jbe       near ptr M01_L10
cmp       eax,3D
je        near ptr M01_L08
M01_L04
 
cmp       rdx,rsi
jb        short M01_L03
M01_L05
 
test      r15d,r15d
je        short M01_L06
cmp       r15d,1
je        near ptr M01_L11
cmp       r15d,2
jne       near ptr M01_L12
mov       r15d,1
M01_L06
 
mov       edx,ecx
sar       edx,1F
and       edx,3
add       edx,ecx
sar       edx,2
lea       edx,[rdx+rdx*2]
add       edx,r15d
movsxd    rdx,edx
mov       rcx,offset MT_System.Byte[]
call      CORINFO_HELP_NEWARR_1_VC
mov       rsi,rax
test      ebx,ebx
jl        near ptr M01_L13
lea       rcx,[rsi+10]
mov       edx,[rsi+8]
mov       [rbp-68],r14
mov       [rbp-60],ebx
mov       [rbp-78],rcx
mov       [rbp-70],edx
lea       rcx,[rbp-68]
lea       rdx,[rbp-78]
lea       r8,[rbp-48]
call      qword ptr [7FF9F6134720]; System.Convert.TryFromBase64Chars(System.ReadOnlySpan`1, System.Span`1, Int32 ByRef)
test      eax,eax
je        near ptr M01_L14
xor       ecx,ecx
mov       [rbp-40],rcx
mov       ebx,[rsi+8]
test      ebx,ebx
je        near ptr M01_L15
mov       [rbp-50],rsi
mov       rcx,[rbp-50]
cmp       dword ptr [rcx+8],0
je        near ptr M01_L16
mov       rcx,[rbp-50]
cmp       dword ptr [rcx+8],0
jbe       near ptr M01_L29
mov       rsi,[rbp-50]
add       rsi,10
M01_L07
 
test      rsi,rsi
je        near ptr M01_L17
mov       rcx,[rdi+18]
mov       r14d,ebx
test      rcx,rcx
je        near ptr M01_L24
mov       rax,offset MT_System.Text.DecoderReplacementFallback
cmp       [rcx],rax
jne       near ptr M01_L24
mov       rcx,[rcx+8]
cmp       dword ptr [rcx+8],1
jne       near ptr M01_L24
jmp       near ptr M01_L18
M01_L08
 
dec       ecx
inc       r15d
jmp       near ptr M01_L04
M01_L09
 
mov       [rsi+10],ecx
jmp       near ptr M01_L23
M01_L10
 
dec       ecx
jmp       near ptr M01_L04
M01_L11
 
mov       r15d,2
jmp       near ptr M01_L06
M01_L12
 
mov       rcx,offset MT_System.FormatException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63944B0]
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F60974B0]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L13
 
call      qword ptr [7FF9F601E9D0]
int       3
M01_L14
 
mov       rcx,offset MT_System.FormatException
call      CORINFO_HELP_NEWSFAST
mov       r13,rax
call      qword ptr [7FF9F63944B0]
mov       rdx,rax
mov       rcx,r13
call      qword ptr [7FF9F60974B0]
mov       rcx,r13
call      CORINFO_HELP_THROW
M01_L15
 
mov       rax,23C42AB0008
jmp       near ptr M01_L21
M01_L16
 
xor       esi,esi
jmp       near ptr M01_L07
M01_L17
 
mov       ecx,0A
mov       edx,31
call      qword ptr [7FF9F601ED18]
int       3
M01_L18
 
mov       r13d,r14d
cmp       r14d,ebx
jne       near ptr M01_L25
M01_L19
 
test      r13d,r13d
je        short M01_L22
mov       ecx,r13d
call      System.String.FastAllocateString(Int32)
mov       r14,rax
cmp       [r14],r14b
lea       r8,[r14+0C]
mov       [rbp-58],r8
mov       r12,[rbp-58]
test      r12,r12
je        near ptr M01_L26
mov       r8d,ebx
or        r8d,r13d
jl        near ptr M01_L27
cmp       r13d,ebx
mov       r8d,ebx
cmovle    r8d,r13d
mov       rcx,rsi
mov       rdx,r12
call      qword ptr [7FF9F601C660]; System.Text.Ascii.WidenAsciiToUtf16(Byte*, Char*, UIntPtr)
cmp       eax,ebx
jne       near ptr M01_L28
M01_L20
 
xor       eax,eax
mov       [rbp-58],rax
mov       rax,r14
M01_L21
 
add       rsp,88
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L22
 
mov       rax,23C42AB0008
jmp       short M01_L21
M01_L23
 
mov       rax,23C42AB0008
add       rsp,88
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L24
 
mov       edx,ebx
mov       rcx,rsi
call      qword ptr [7FF9F601C468]; System.Text.Ascii.GetIndexOfFirstNonAsciiByte_Vector(Byte*, UIntPtr)
mov       r14d,eax
mov       r13d,r14d
cmp       r14d,ebx
je        near ptr M01_L19
M01_L25
 
mov       rcx,rdi
mov       rdx,rsi
mov       r8d,ebx
mov       r9d,r13d
call      qword ptr [7FF9F5DBC990]
add       eax,r13d
mov       r13d,eax
test      r13d,r13d
jge       near ptr M01_L19
call      qword ptr [7FF9F5DBC7E0]
int       3
M01_L26
 
mov       ecx,0E
mov       edx,31
call      qword ptr [7FF9F601ED18]
int       3
M01_L27
 
mov       ecx,10
mov       edx,0D
call      qword ptr [7FF9F601ED48]
int       3
M01_L28
 
mov       [rsp+20],r13d
mov       [rsp+28],eax
mov       [rsp+30],eax
mov       dword ptr [rsp+38],1
mov       rcx,rdi
mov       rdx,rsi
mov       r8d,ebx
mov       r9,r12
call      qword ptr [7FF9F5DBCA08]
jmp       near ptr M01_L20
M01_L29
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.FromBase64()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rcx,[rbx+280]
call      qword ptr [7FF9F62ACF48]; DotNetTips.Spargine.Extensions.StringExtensions.FromBase64(System.String)
mov       [rsp+28],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.StringExtensions.FromBase64(System.String)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,88
lea       rbp,[rsp+0C0]
xor       eax,eax
mov       [rbp-78],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-70],xmm4
vmovdqa   xmmword ptr [rbp-60],xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
mov       [rbp-40],rax
mov       rbx,rcx
test      rbx,rbx
je        near ptr M01_L23
mov       rcx,offset MT_System.CharEnumerator
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       dword ptr [rsi+10],0FFFFFFFF
lea       rcx,[rsi+8]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
mov       edx,[rsi+10]
inc       edx
mov       rcx,[rsi+8]
mov       ecx,[rcx+8]
cmp       edx,ecx
jge       near ptr M01_L09
mov       [rsi+10],edx
mov       rcx,1B45200EF30
mov       rdi,[rcx]
lea       rdx,[rbx+0C]
mov       [rbp-40],rdx
mov       r14,[rbp-40]
mov       ebx,[rbx+8]
test      ebx,ebx
jle       short M01_L02
M01_L00
 
lea       edx,[rbx-1]
movsxd    rcx,edx
movzx     ecx,word ptr [r14+rcx*2]
cmp       ecx,20
je        short M01_L01
cmp       ecx,0A
je        short M01_L01
cmp       ecx,0D
je        short M01_L01
cmp       ecx,9
jne       short M01_L02
M01_L01
 
mov       ebx,edx
test      ebx,ebx
jg        short M01_L00
M01_L02
 
mov       rdx,r14
movsxd    rcx,ebx
lea       rsi,[rdx+rcx*2]
mov       ecx,ebx
xor       r15d,r15d
cmp       r14,rsi
jae       short M01_L05
nop       dword ptr [rax]
M01_L03
 
movzx     eax,word ptr [rdx]
add       rdx,2
cmp       eax,20
jbe       near ptr M01_L10
cmp       eax,3D
je        near ptr M01_L08
M01_L04
 
cmp       rdx,rsi
jb        short M01_L03
M01_L05
 
test      r15d,r15d
je        short M01_L06
cmp       r15d,1
je        near ptr M01_L11
cmp       r15d,2
jne       near ptr M01_L12
mov       r15d,1
M01_L06
 
mov       edx,ecx
sar       edx,1F
and       edx,3
add       edx,ecx
sar       edx,2
lea       edx,[rdx+rdx*2]
add       edx,r15d
movsxd    rdx,edx
mov       rcx,offset MT_System.Byte[]
call      CORINFO_HELP_NEWARR_1_VC
mov       rsi,rax
test      ebx,ebx
jl        near ptr M01_L13
lea       rcx,[rsi+10]
mov       edx,[rsi+8]
mov       [rbp-68],r14
mov       [rbp-60],ebx
mov       [rbp-78],rcx
mov       [rbp-70],edx
lea       rcx,[rbp-68]
lea       rdx,[rbp-78]
lea       r8,[rbp-48]
call      qword ptr [7FF9F6144720]; System.Convert.TryFromBase64Chars(System.ReadOnlySpan`1, System.Span`1, Int32 ByRef)
test      eax,eax
je        near ptr M01_L14
xor       ecx,ecx
mov       [rbp-40],rcx
mov       ebx,[rsi+8]
test      ebx,ebx
je        near ptr M01_L15
mov       [rbp-50],rsi
mov       rcx,[rbp-50]
cmp       dword ptr [rcx+8],0
je        near ptr M01_L16
mov       rcx,[rbp-50]
cmp       dword ptr [rcx+8],0
jbe       near ptr M01_L29
mov       rsi,[rbp-50]
add       rsi,10
M01_L07
 
test      rsi,rsi
je        near ptr M01_L17
mov       rcx,[rdi+18]
mov       r14d,ebx
test      rcx,rcx
je        near ptr M01_L24
mov       rax,offset MT_System.Text.DecoderReplacementFallback
cmp       [rcx],rax
jne       near ptr M01_L24
mov       rcx,[rcx+8]
cmp       dword ptr [rcx+8],1
jne       near ptr M01_L24
jmp       near ptr M01_L18
M01_L08
 
dec       ecx
inc       r15d
jmp       near ptr M01_L04
M01_L09
 
mov       [rsi+10],ecx
jmp       near ptr M01_L23
M01_L10
 
dec       ecx
jmp       near ptr M01_L04
M01_L11
 
mov       r15d,2
jmp       near ptr M01_L06
M01_L12
 
mov       rcx,offset MT_System.FormatException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63A44B0]
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F60A74B0]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L13
 
call      qword ptr [7FF9F602E9D0]
int       3
M01_L14
 
mov       rcx,offset MT_System.FormatException
call      CORINFO_HELP_NEWSFAST
mov       r13,rax
call      qword ptr [7FF9F63A44B0]
mov       rdx,rax
mov       rcx,r13
call      qword ptr [7FF9F60A74B0]
mov       rcx,r13
call      CORINFO_HELP_THROW
M01_L15
 
mov       rax,1F4E4040008
jmp       near ptr M01_L21
M01_L16
 
xor       esi,esi
jmp       near ptr M01_L07
M01_L17
 
mov       ecx,0A
mov       edx,31
call      qword ptr [7FF9F602ED18]
int       3
M01_L18
 
mov       r13d,r14d
cmp       r14d,ebx
jne       near ptr M01_L25
M01_L19
 
test      r13d,r13d
je        short M01_L22
mov       ecx,r13d
call      System.String.FastAllocateString(Int32)
mov       r14,rax
cmp       [r14],r14b
lea       r8,[r14+0C]
mov       [rbp-58],r8
mov       r12,[rbp-58]
test      r12,r12
je        near ptr M01_L26
mov       r8d,ebx
or        r8d,r13d
jl        near ptr M01_L27
cmp       r13d,ebx
mov       r8d,ebx
cmovle    r8d,r13d
mov       rcx,rsi
mov       rdx,r12
call      qword ptr [7FF9F602C660]; System.Text.Ascii.WidenAsciiToUtf16(Byte*, Char*, UIntPtr)
cmp       eax,ebx
jne       near ptr M01_L28
M01_L20
 
xor       eax,eax
mov       [rbp-58],rax
mov       rax,r14
M01_L21
 
add       rsp,88
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L22
 
mov       rax,1F4E4040008
jmp       short M01_L21
M01_L23
 
mov       rax,1F4E4040008
add       rsp,88
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L24
 
mov       edx,ebx
mov       rcx,rsi
call      qword ptr [7FF9F602C468]; System.Text.Ascii.GetIndexOfFirstNonAsciiByte_Vector(Byte*, UIntPtr)
mov       r14d,eax
mov       r13d,r14d
cmp       r14d,ebx
je        near ptr M01_L19
M01_L25
 
mov       rcx,rdi
mov       rdx,rsi
mov       r8d,ebx
mov       r9d,r13d
call      qword ptr [7FF9F5DCC990]
add       eax,r13d
mov       r13d,eax
test      r13d,r13d
jge       near ptr M01_L19
call      qword ptr [7FF9F5DCC7E0]
int       3
M01_L26
 
mov       ecx,0E
mov       edx,31
call      qword ptr [7FF9F602ED18]
int       3
M01_L27
 
mov       ecx,10
mov       edx,0D
call      qword ptr [7FF9F602ED48]
int       3
M01_L28
 
mov       [rsp+20],r13d
mov       [rsp+28],eax
mov       [rsp+30],eax
mov       dword ptr [rsp+38],1
mov       rcx,rdi
mov       rdx,rsi
mov       r8d,ebx
mov       r9,r12
call      qword ptr [7FF9F5DCCA08]
jmp       near ptr M01_L20
M01_L29
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.FromBase64()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rcx,[rbx+280]
call      qword ptr [7FF9F629CF48]; DotNetTips.Spargine.Extensions.StringExtensions.FromBase64(System.String)
mov       [rsp+28],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.StringExtensions.FromBase64(System.String)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,88
lea       rbp,[rsp+0C0]
xor       eax,eax
mov       [rbp-78],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-70],xmm4
vmovdqa   xmmword ptr [rbp-60],xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
mov       [rbp-40],rax
mov       rbx,rcx
test      rbx,rbx
je        near ptr M01_L23
mov       rcx,offset MT_System.CharEnumerator
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       dword ptr [rsi+10],0FFFFFFFF
lea       rcx,[rsi+8]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
mov       edx,[rsi+10]
inc       edx
mov       rcx,[rsi+8]
mov       ecx,[rcx+8]
cmp       edx,ecx
jge       near ptr M01_L09
mov       [rsi+10],edx
mov       rcx,1AA12C0EF30
mov       rdi,[rcx]
lea       rdx,[rbx+0C]
mov       [rbp-40],rdx
mov       r14,[rbp-40]
mov       ebx,[rbx+8]
test      ebx,ebx
jle       short M01_L02
M01_L00
 
lea       edx,[rbx-1]
movsxd    rcx,edx
movzx     ecx,word ptr [r14+rcx*2]
cmp       ecx,20
je        short M01_L01
cmp       ecx,0A
je        short M01_L01
cmp       ecx,0D
je        short M01_L01
cmp       ecx,9
jne       short M01_L02
M01_L01
 
mov       ebx,edx
test      ebx,ebx
jg        short M01_L00
M01_L02
 
mov       rdx,r14
movsxd    rcx,ebx
lea       rsi,[rdx+rcx*2]
mov       ecx,ebx
xor       r15d,r15d
cmp       r14,rsi
jae       short M01_L05
nop       dword ptr [rax]
M01_L03
 
movzx     eax,word ptr [rdx]
add       rdx,2
cmp       eax,20
jbe       near ptr M01_L10
cmp       eax,3D
je        near ptr M01_L08
M01_L04
 
cmp       rdx,rsi
jb        short M01_L03
M01_L05
 
test      r15d,r15d
je        short M01_L06
cmp       r15d,1
je        near ptr M01_L11
cmp       r15d,2
jne       near ptr M01_L12
mov       r15d,1
M01_L06
 
mov       edx,ecx
sar       edx,1F
and       edx,3
add       edx,ecx
sar       edx,2
lea       edx,[rdx+rdx*2]
add       edx,r15d
movsxd    rdx,edx
mov       rcx,offset MT_System.Byte[]
call      CORINFO_HELP_NEWARR_1_VC
mov       rsi,rax
test      ebx,ebx
jl        near ptr M01_L13
lea       rcx,[rsi+10]
mov       edx,[rsi+8]
mov       [rbp-68],r14
mov       [rbp-60],ebx
mov       [rbp-78],rcx
mov       [rbp-70],edx
lea       rcx,[rbp-68]
lea       rdx,[rbp-78]
lea       r8,[rbp-48]
call      qword ptr [7FF9F6134720]; System.Convert.TryFromBase64Chars(System.ReadOnlySpan`1, System.Span`1, Int32 ByRef)
test      eax,eax
je        near ptr M01_L14
xor       ecx,ecx
mov       [rbp-40],rcx
mov       ebx,[rsi+8]
test      ebx,ebx
je        near ptr M01_L15
mov       [rbp-50],rsi
mov       rcx,[rbp-50]
cmp       dword ptr [rcx+8],0
je        near ptr M01_L16
mov       rcx,[rbp-50]
cmp       dword ptr [rcx+8],0
jbe       near ptr M01_L29
mov       rsi,[rbp-50]
add       rsi,10
M01_L07
 
test      rsi,rsi
je        near ptr M01_L17
mov       rcx,[rdi+18]
mov       r14d,ebx
test      rcx,rcx
je        near ptr M01_L24
mov       rax,offset MT_System.Text.DecoderReplacementFallback
cmp       [rcx],rax
jne       near ptr M01_L24
mov       rcx,[rcx+8]
cmp       dword ptr [rcx+8],1
jne       near ptr M01_L24
jmp       near ptr M01_L18
M01_L08
 
dec       ecx
inc       r15d
jmp       near ptr M01_L04
M01_L09
 
mov       [rsi+10],ecx
jmp       near ptr M01_L23
M01_L10
 
dec       ecx
jmp       near ptr M01_L04
M01_L11
 
mov       r15d,2
jmp       near ptr M01_L06
M01_L12
 
mov       rcx,offset MT_System.FormatException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
call      qword ptr [7FF9F63944B0]
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F60974B0]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M01_L13
 
call      qword ptr [7FF9F601E9D0]
int       3
M01_L14
 
mov       rcx,offset MT_System.FormatException
call      CORINFO_HELP_NEWSFAST
mov       r13,rax
call      qword ptr [7FF9F63944B0]
mov       rdx,rax
mov       rcx,r13
call      qword ptr [7FF9F60974B0]
mov       rcx,r13
call      CORINFO_HELP_THROW
M01_L15
 
mov       rax,1EAA49D0008
jmp       near ptr M01_L21
M01_L16
 
xor       esi,esi
jmp       near ptr M01_L07
M01_L17
 
mov       ecx,0A
mov       edx,31
call      qword ptr [7FF9F601ED18]
int       3
M01_L18
 
mov       r13d,r14d
cmp       r14d,ebx
jne       near ptr M01_L25
M01_L19
 
test      r13d,r13d
je        short M01_L22
mov       ecx,r13d
call      System.String.FastAllocateString(Int32)
mov       r14,rax
cmp       [r14],r14b
lea       r8,[r14+0C]
mov       [rbp-58],r8
mov       r12,[rbp-58]
test      r12,r12
je        near ptr M01_L26
mov       r8d,ebx
or        r8d,r13d
jl        near ptr M01_L27
cmp       r13d,ebx
mov       r8d,ebx
cmovle    r8d,r13d
mov       rcx,rsi
mov       rdx,r12
call      qword ptr [7FF9F601C660]; System.Text.Ascii.WidenAsciiToUtf16(Byte*, Char*, UIntPtr)
cmp       eax,ebx
jne       near ptr M01_L28
M01_L20
 
xor       eax,eax
mov       [rbp-58],rax
mov       rax,r14
M01_L21
 
add       rsp,88
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L22
 
mov       rax,1EAA49D0008
jmp       short M01_L21
M01_L23
 
mov       rax,1EAA49D0008
add       rsp,88
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L24
 
mov       edx,ebx
mov       rcx,rsi
call      qword ptr [7FF9F601C468]; System.Text.Ascii.GetIndexOfFirstNonAsciiByte_Vector(Byte*, UIntPtr)
mov       r14d,eax
mov       r13d,r14d
cmp       r14d,ebx
je        near ptr M01_L19
M01_L25
 
mov       rcx,rdi
mov       rdx,rsi
mov       r8d,ebx
mov       r9d,r13d
call      qword ptr [7FF9F5DBC990]
add       eax,r13d
mov       r13d,eax
test      r13d,r13d
jge       near ptr M01_L19
call      qword ptr [7FF9F5DBC7E0]
int       3
M01_L26
 
mov       ecx,0E
mov       edx,31
call      qword ptr [7FF9F601ED18]
int       3
M01_L27
 
mov       ecx,10
mov       edx,0D
call      qword ptr [7FF9F601ED48]
int       3
M01_L28
 
mov       [rsp+20],r13d
mov       [rsp+28],eax
mov       [rsp+30],eax
mov       dword ptr [rsp+38],1
mov       rcx,rdi
mov       rdx,rsi
mov       r8d,ebx
mov       r9,r12
call      qword ptr [7FF9F5DBCA08]
jmp       near ptr M01_L20
M01_L29
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.RemoveCRLF01()
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,40
xor       eax,eax
mov       [rsp+38],rax
mov       [rsp+30],rax
mov       rbx,rcx
mov       rcx,[rbx+298]
test      rcx,rcx
je        near ptr M00_L09
mov       [rsp+38],rcx
mov       rcx,1961540EF18
mov       rsi,[rcx]
cmp       byte ptr [rsi+9E],0
jne       short M00_L00
mov       rcx,rsi
call      qword ptr [7FF9F62F6A48]; System.Text.Json.JsonSerializerOptions.ConfigureForJsonSerializer()
M00_L00
 
mov       rcx,rsi
call      qword ptr [7FF9F62F6358]; System.Text.Json.JsonSerializerOptions.get_ObjectTypeInfo()
mov       r8,rax
test      r8,r8
jne       short M00_L02
M00_L01
 
lea       rdx,[rsp+38]
mov       rcx,offset MD_System.Text.Json.JsonSerializer.WriteString[[System.Object, System.Private.CoreLib]](System.Object ByRef, System.Text.Json.Serialization.Metadata.JsonTypeInfo`1)
call      qword ptr [7FF9F677D200]; System.Text.Json.JsonSerializer.WriteString[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef, System.Text.Json.Serialization.Metadata.JsonTypeInfo`1)
test      rax,rax
je        short M00_L03
mov       ecx,[rax+8]
xor       edx,edx
test      ecx,ecx
sete      dl
test      edx,edx
sete      dl
movzx     edx,dl
test      ecx,ecx
jne       short M00_L04
jmp       short M00_L04
M00_L02
 
mov       rcx,offset MT_System.Text.Json.Serialization.Metadata.JsonTypeInfo`1[[System.Object, System.Private.CoreLib]]
cmp       [r8],rcx
jne       near ptr M00_L10
jmp       short M00_L01
M00_L03
 
xor       edx,edx
M00_L04
 
test      edx,edx
je        near ptr M00_L11
mov       rcx,rax
cmp       [rcx],ecx
call      qword ptr [7FF9F5DD7318]; System.String.Trim()
mov       rdx,rax
mov       rcx,offset MD_DotNetTips.Spargine.Core.Serialization.JsonSerialization.Deserialize[[System.String, System.Private.CoreLib]](System.String)
call      qword ptr [7FF9F67CCF30]; DotNetTips.Spargine.Core.Serialization.JsonSerialization.Deserialize[[System.__Canon, System.Private.CoreLib]](System.String)
mov       rsi,rax
test      rsi,rsi
je        near ptr M00_L08
mov       rcx,1961540DC68
mov       rdi,[rcx]
mov       rbp,rsi
test      byte ptr [rdi+40],40
je        near ptr M00_L07
mov       rbp,rsi
mov       r14d,[rbp+8]
M00_L05
 
mov       rcx,rdi
call      qword ptr [7FF9F621D830]; System.Text.RegularExpressions.Regex.get_RegexReplacementWeakReference()
mov       rcx,rax
mov       r8,[rdi+20]
mov       [rsp+20],r8
mov       r8d,[rdi+40]
mov       [rsp+28],r8d
mov       r8,[rdi+18]
mov       r9d,[rdi+44]
mov       rdx,1D6A7430008
call      qword ptr [7FF9F689DB00]; System.Text.RegularExpressions.RegexReplacement.GetOrCreate(System.WeakReference`1, System.String, System.Collections.Hashtable, Int32, System.Collections.Hashtable, System.Text.RegularExpressions.RegexOptions)
mov       rcx,rax
mov       [rsp+20],r14d
mov       rdx,rdi
mov       r8,rbp
mov       r9d,0FFFFFFFF
cmp       [rcx],ecx
call      qword ptr [7FF9F689DB60]; System.Text.RegularExpressions.RegexReplacement.Replace(System.Text.RegularExpressions.Regex, System.String, Int32, Int32)
M00_L06
 
mov       [rsp+30],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+30]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,40
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
ret
M00_L07
 
xor       r14d,r14d
jmp       short M00_L05
M00_L08
 
xor       eax,eax
jmp       short M00_L06
M00_L09
 
call      qword ptr [7FF9F63552C0]
mov       ecx,7D9
mov       rdx,7FF9F62D3C60
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1446
mov       rdx,7FF9F6165A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DD6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FF9F62D3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DD6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63550B0]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FF9F6066670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L10
 
mov       rdx,rax
call      qword ptr [7FF9F5DD43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M00_L11
 
call      qword ptr [7FF9F6355368]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L12
call      qword ptr [7FF9F63550B0]
mov       rbx,rax
M00_L12
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,1D6A74448E8
mov       r8,rbx
call      qword ptr [7FF9F6066670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Text.Json.JsonSerializerOptions.ConfigureForJsonSerializer()
M01_L00
 
push      rbp
sub       rsp,80
vzeroupper
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
mov       rax,0FFFFFFFFFFFFFFA0
M01_L01
 
vmovdqa   xmmword ptr [rax+rbp],xmm4
vmovdqa   xmmword ptr [rbp+rax+10],xmm4
vmovdqa   xmmword ptr [rbp+rax+20],xmm4
add       rax,30
jne       short M01_L01
mov       [rbp+10],rcx
call      qword ptr [7FF9F62F7780]; System.Text.Json.JsonSerializer.get_IsReflectionEnabledByDefault()
test      eax,eax
je        near ptr M01_L05
call      qword ptr [7FF9F635DA40]; System.Text.Json.Serialization.Metadata.DefaultJsonTypeInfoResolver.get_DefaultInstance()
mov       [rbp-18],rax
mov       rdx,[rbp+10]
mov       rdx,[rdx+20]
mov       [rbp-30],rdx
cmp       qword ptr [rbp-30],0
je        short M01_L02
mov       rdx,[rbp-30]
mov       rcx,offset MT_System.Text.Json.Serialization.JsonSerializerContext
call      qword ptr [7FF9F5DD4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       [rbp-28],rax
cmp       qword ptr [rbp-28],0
jne       short M01_L03
jmp       near ptr M01_L09
M01_L02
 
mov       rcx,[rbp+10]
lea       rcx,[rcx+20]
mov       rdx,[rbp-18]
call      CORINFO_HELP_ASSIGN_REF
jmp       near ptr M01_L09
M01_L03
 
call      qword ptr [7FF9F62F7180]
test      eax,eax
je        near ptr M01_L09
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rbp-10],xmm0
lea       rdx,[rbp-10]
mov       rcx,offset MD_.InlineArrayElementRef[[<>y__InlineArray2`1[[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]], System.Text.Json],[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]](<>y__InlineArray2`1 ByRef, Int32)
xor       r8d,r8d
call      qword ptr [7FF9F635DC50]
mov       rdx,[rbp-28]
mov       rcx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rdx,[rbp-10]
mov       rcx,offset MD_.InlineArrayElementRef[[<>y__InlineArray2`1[[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]], System.Text.Json],[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]](<>y__InlineArray2`1 ByRef, Int32)
mov       r8d,1
call      qword ptr [7FF9F635DC50]
mov       rdx,[rbp-18]
mov       rcx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rbp-48]
lea       r8,[rbp-10]
mov       rdx,offset MD_.InlineArrayAsReadOnlySpan[[<>y__InlineArray2`1[[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]], System.Text.Json],[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]](<>y__InlineArray2`1 ByRef, Int32)
mov       r9d,2
call      qword ptr [7FF9F635DC80]
mov       rcx,[rbp+10]
lea       rcx,[rcx+60]
mov       [rbp-60],rcx
vmovdqu   xmm0,xmmword ptr [rbp-48]
vmovdqu   xmmword ptr [rbp-58],xmm0
lea       rcx,[rbp-58]
call      qword ptr [7FF9F635DCC8]
mov       rcx,[rbp-60]
mov       rdx,rax
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rbp+10]
mov       rcx,[rcx+8]
mov       [rbp-20],rcx
cmp       qword ptr [rbp-20],0
je        near ptr M01_L09
mov       rcx,[rbp-20]
cmp       [rcx],ecx
call      qword ptr [7FF9F635DAE8]; System.Text.Json.JsonSerializerOptions+CachingContext.get_Options()
cmp       rax,[rbp+10]
je        short M01_L04
mov       rcx,[rbp-20]
cmp       [rcx],ecx
call      qword ptr [7FF9F635DAE8]; System.Text.Json.JsonSerializerOptions+CachingContext.get_Options()
movzx     ecx,byte ptr [rax+9E]
test      ecx,ecx
jne       short M01_L04
mov       rcx,[rbp-20]
cmp       [rcx],ecx
call      qword ptr [7FF9F635DAE8]; System.Text.Json.JsonSerializerOptions+CachingContext.get_Options()
mov       rcx,rax
cmp       [rcx],ecx
call      qword ptr [7FF9F62F6A48]
jmp       short M01_L09
M01_L04
 
mov       rcx,[rbp-20]
cmp       [rcx],ecx
call      qword ptr [7FF9F635DB60]
jmp       short M01_L09
M01_L05
 
mov       rdx,[rbp+10]
mov       rdx,[rdx+20]
mov       [rbp-30],rdx
cmp       qword ptr [rbp-30],0
je        short M01_L06
mov       rdx,[rbp-30]
mov       rcx,offset MT_System.Text.Json.Serialization.Metadata.EmptyJsonTypeInfoResolver
call      qword ptr [7FF9F5DD4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
test      rax,rax
je        short M01_L07
M01_L06
 
mov       dword ptr [rbp-34],1
jmp       short M01_L08
M01_L07
 
xor       eax,eax
mov       [rbp-34],eax
M01_L08
 
cmp       dword ptr [rbp-34],0
je        short M01_L09
call      qword ptr [7FF9F62FD098]
M01_L09
 
mov       rax,[rbp+10]
mov       byte ptr [rax+9D],1
mov       rax,[rbp+10]
mov       byte ptr [rax+9E],1
add       rsp,80
pop       rbp
ret
 
System.Text.Json.JsonSerializerOptions.get_ObjectTypeInfo()
push      rsi
push      rbx
sub       rsp,38
mov       rbx,rcx
mov       rax,[rbx+18]
test      rax,rax
je        short M02_L01
M02_L00
 
add       rsp,38
pop       rbx
pop       rsi
ret
M02_L01
 
mov       byte ptr [rsp+30],1
mov       byte ptr [rsp+31],1
xor       ecx,ecx
mov       [rsp+20],ecx
mov       [rsp+28],ecx
mov       rcx,rbx
movzx     r9d,word ptr [rsp+30]
mov       rdx,1D6A7432D10
mov       r8d,1
call      qword ptr [7FF9F62F62F8]; System.Text.Json.JsonSerializerOptions.GetTypeInfoInternal(System.Type, Boolean, System.Nullable`1, Boolean, Boolean)
mov       rsi,rax
lea       rcx,[rbx+18]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rax,rsi
jmp       short M02_L00
 
System.Text.Json.JsonSerializer.WriteString[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef, System.Text.Json.Serialization.Metadata.JsonTypeInfo`1)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,88
vzeroupper
lea       rbp,[rsp+0C0]
xor       eax,eax
mov       [rbp-98],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-90],xmm4
vmovdqa   xmmword ptr [rbp-80],xmm4
vmovdqa   xmmword ptr [rbp-70],xmm4
vmovdqa   xmmword ptr [rbp-60],xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
mov       [rbp-40],rax
mov       [rbp-0A0],rsp
mov       rsi,rdx
mov       rbx,r8
mov       rdi,[rbx+0B0]
lea       rdx,[rbp-48]
mov       rcx,rdi
cmp       [rcx],ecx
call      qword ptr [7FF9F62F6AC0]; System.Text.Json.JsonSerializerOptions.GetWriterOptions()
mov       edi,[rdi+7C]
mov       rcx,gs:[58]
mov       rcx,[rcx+30]
cmp       dword ptr [rcx+190],3
jl        near ptr M03_L11
mov       rcx,[rcx+198]
mov       rcx,[rcx+18]
test      rcx,rcx
je        near ptr M03_L11
mov       rax,[rcx]
add       rax,10
mov       r14,[rax]
test      r14,r14
je        near ptr M03_L12
M03_L00
 
mov       ecx,[r14+18]
lea       edx,[rcx+1]
mov       [r14+18],edx
test      ecx,ecx
jne       near ptr M03_L15
mov       rcx,[r14+8]
mov       [rbp-90],rcx
mov       r14,[r14+10]
mov       rcx,[rbp-90]
cmp       [rcx],cl
mov       rcx,19615401F20
mov       rcx,[rcx]
mov       edx,edi
call      qword ptr [7FF9F65D4018]; System.Buffers.SharedArrayPool`1[[System.Byte, System.Private.CoreLib]].Rent(Int32)
mov       rcx,[rbp-90]
lea       rcx,[rcx+10]
mov       rdx,rax
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rbp-90]
xor       edx,edx
mov       [rcx+20],edx
lea       rcx,[r14+8]
mov       rdx,[rbp-90]
call      CORINFO_HELP_ASSIGN_REF
mov       edi,[rbp-3C]
lea       rcx,[r14+68]
mov       rdx,[rbp-48]
call      CORINFO_HELP_ASSIGN_REF
mov       ecx,[rbp-40]
mov       [r14+70],ecx
mov       ecx,[rbp-3C]
mov       [r14+74],ecx
mov       ecx,9
mov       edx,20
test      byte ptr [r14+74],8
cmove     ecx,edx
mov       [r14+3B],cl
mov       ecx,edi
and       ecx,7F0
sar       ecx,4
je        short M03_L01
xor       edx,edx
cmp       ecx,2
cmovne    edx,ecx
jmp       short M03_L02
M03_L01
 
mov       edx,2
M03_L02
 
mov       [r14+2C],edx
test      dil,4
jne       near ptr M03_L13
mov       rdi,1D6A7431C08
M03_L03
 
mov       ecx,[rdi+8]
mov       [r14+30],ecx
cmp       dword ptr [r14+70],0
je        near ptr M03_L14
M03_L04
 
mov       [rbp-88],r14
mov       rcx,rbx
mov       rdx,r14
mov       r8,rsi
xor       r9d,r9d
call      qword ptr [7FF9F635D1E8]; System.Text.Json.Serialization.Metadata.JsonTypeInfo`1[[System.__Canon, System.Private.CoreLib]].Serialize(System.Text.Json.Utf8JsonWriter, System.__Canon ByRef, System.Object)
mov       rcx,[rbp-90]
mov       rcx,[rcx+10]
mov       rax,[rbp-90]
mov       r15d,[rax+20]
test      rcx,rcx
je        short M03_L08
cmp       [rcx+8],r15d
jb        short M03_L07
M03_L05
 
xor       r13d,r13d
xor       r12d,r12d
test      rcx,rcx
je        short M03_L10
mov       rax,[rcx]
test      dword ptr [rax],80000000
je        short M03_L09
lea       r13,[rcx+10]
mov       r12d,[rcx+8]
M03_L06
 
mov       ecx,r15d
mov       eax,r12d
cmp       rcx,rax
ja        short M03_L07
mov       r12d,r15d
jmp       short M03_L10
M03_L07
 
call      qword ptr [7FF9F603E9D0]
int       3
M03_L08
 
test      r15d,r15d
jne       short M03_L07
xor       ecx,ecx
xor       r15d,r15d
jmp       short M03_L05
M03_L09
 
lea       rdx,[rbp-58]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+28]
mov       r13,[rbp-58]
mov       r12d,[rbp-50]
jmp       short M03_L06
M03_L10
 
mov       rcx,r13
mov       [rbp-80],rcx
mov       [rbp-78],r12d
lea       rcx,[rbp-80]
call      qword ptr [7FF9F635E718]; System.Text.Json.JsonReaderHelper.TranscodeHelper(System.ReadOnlySpan`1)
mov       [rbp-98],rax
mov       rcx,rsp
call      M03_L16
nop
mov       rax,[rbp-98]
add       rsp,88
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M03_L11
 
mov       ecx,3
call      CORINFO_HELP_GETSHARED_GCTHREADSTATIC_BASE_NOCTOR_OPTIMIZED
mov       r14,[rax]
test      r14,r14
jne       near ptr M03_L00
M03_L12
 
mov       rcx,offset MT_System.Text.Json.Utf8JsonWriterCache+ThreadLocalState
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
call      qword ptr [7FF9F677E028]; System.Text.Json.Utf8JsonWriterCache+ThreadLocalState..ctor()
mov       ecx,3
call      CORINFO_HELP_GETSHARED_GCTHREADSTATIC_BASE_NOCTOR_OPTIMIZED
mov       rcx,rax
mov       rdx,r14
call      CORINFO_HELP_ASSIGN_REF
jmp       near ptr M03_L00
M03_L13
 
mov       rcx,7FF9F6304D40
mov       edx,69
call      CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
mov       rcx,1961540F9D0
mov       rdi,[rcx]
jmp       near ptr M03_L03
M03_L14
 
lea       rcx,[r14+68]
mov       edx,3E8
call      qword ptr [7FF9F66B7A20]; System.Text.Json.JsonWriterOptions.set_MaxDepth(Int32)
jmp       near ptr M03_L04
M03_L15
 
mov       rcx,offset MT_System.Text.Json.PooledByteBufferWriter
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       edx,edi
call      qword ptr [7FF9F6727DB0]
mov       [rbp-90],r14
mov       rcx,offset MT_System.Text.Json.Utf8JsonWriter
call      CORINFO_HELP_NEWSFAST
mov       r13,rax
mov       rdx,r14
vmovdqu   xmm0,xmmword ptr [rbp-48]
vmovdqu   xmmword ptr [rbp-70],xmm0
mov       rcx,r13
lea       r8,[rbp-70]
call      qword ptr [7FF9F66BC0D8]
mov       r14,r13
jmp       near ptr M03_L04
M03_L16
 
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,28
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+0C0]
mov       r14,[rbp-90]
mov       rcx,gs:[58]
mov       rcx,[rcx+30]
cmp       dword ptr [rcx+190],3
jl        short M03_L17
mov       rcx,[rcx+198]
mov       rcx,[rcx+18]
test      rcx,rcx
jne       short M03_L18
M03_L17
 
mov       ecx,3
call      CORINFO_HELP_GETSHARED_GCTHREADSTATIC_BASE_NOCTOR_OPTIMIZED
jmp       short M03_L19
M03_L18
 
mov       rax,[rcx]
add       rax,10
M03_L19
 
mov       r15,[rax]
xor       ecx,ecx
mov       r12,[rbp-88]
mov       [r12+34],ecx
mov       [r12+20],rcx
mov       [r12+40],rcx
mov       [r12+48],rcx
mov       byte ptr [r12+38],0
mov       byte ptr [r12+3A],0
mov       byte ptr [r12+39],0
mov       [r12+28],ecx
mov       [r12+50],rcx
mov       [r12+58],rcx
mov       [r12+60],rcx
mov       [r12+10],rcx
mov       [r12+18],rcx
mov       [r12+8],rcx
mov       rcx,[rbp-90]
mov       rcx,[rcx+10]
mov       rdx,[rbp-90]
mov       r10d,[rdx+20]
test      rcx,rcx
jne       short M03_L20
test      r10d,r10d
jne       short M03_L21
xor       ecx,ecx
xor       r10d,r10d
jmp       short M03_L23
M03_L20
 
cmp       [rcx+8],r10d
jae       short M03_L22
M03_L21
 
call      qword ptr [7FF9F603E9D0]
int       3
M03_L22
 
add       rcx,10
M03_L23
 
mov       edx,r10d
mov       [rbp-60],rdx
test      rdx,rdx
je        short M03_L25
cmp       rdx,300
ja        short M03_L24
xor       edx,edx
mov       r8d,[rbp-60]
call      CORINFO_HELP_MEMSET
jmp       short M03_L25
M03_L24
 
mov       rdx,[rbp-60]
call      qword ptr [7FF9F5E85BA8]; System.Buffer._ZeroMemory(Byte ByRef, UIntPtr)
M03_L25
 
xor       ecx,ecx
mov       [r14+20],ecx
mov       rdx,[r14+10]
mov       [r14+10],rcx
mov       rcx,19615401F20
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65D4020]; System.Buffers.SharedArrayPool`1[[System.Byte, System.Private.CoreLib]].Return(Byte[], Boolean)
dec       dword ptr [r15+18]
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Trim()
push      rsi
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,[rbx+8]
test      esi,esi
je        short M04_L03
movzx     ecx,word ptr [rbx+0C]
cmp       ecx,100
jae       short M04_L00
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       short M04_L04
jmp       short M04_L01
M04_L00
 
call      qword ptr [7FF9F68F72E8]
test      eax,eax
jne       short M04_L04
M04_L01
 
dec       esi
mov       ecx,esi
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L02
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       short M04_L04
jmp       short M04_L03
M04_L02
 
call      qword ptr [7FF9F68F72E8]
test      eax,eax
jne       short M04_L04
M04_L03
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rsi
ret
M04_L04
 
mov       rcx,rbx
mov       edx,3
call      qword ptr [7FF9F5DD73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
nop
add       rsp,28
pop       rbx
pop       rsi
ret
 
DotNetTips.Spargine.Core.Serialization.JsonSerialization.Deserialize[[System.__Canon, System.Private.CoreLib]](System.String)
push      rsi
push      rbx
sub       rsp,58
vzeroupper
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
mov       [rsp+50],rcx
mov       rsi,rcx
mov       rbx,rdx
mov       rcx,rbx
test      rcx,rcx
je        short M05_L00
mov       eax,[rcx+8]
xor       edx,edx
test      eax,eax
sete      dl
test      edx,edx
sete      dl
movzx     edx,dl
test      eax,eax
jne       short M05_L01
jmp       short M05_L01
M05_L00
 
xor       edx,edx
M05_L01
 
test      edx,edx
je        near ptr M05_L10
cmp       [rcx],ecx
call      qword ptr [7FF9F5DD7318]; System.String.Trim()
mov       rbx,rax
mov       rcx,[rsi+10]
mov       rcx,[rcx+10]
test      rcx,rcx
je        short M05_L03
M05_L02
 
mov       r8,1961540DD88
mov       r8,[r8]
mov       rdx,rbx
call      qword ptr [7FF9F67CCF90]; System.Text.Json.JsonSerializer.Deserialize[[System.__Canon, System.Private.CoreLib]](System.String, System.Text.Json.JsonSerializerOptions)
test      rax,rax
je        near ptr M05_L12
add       rsp,58
pop       rbx
pop       rsi
ret
M05_L03
 
mov       rcx,rsi
mov       rdx,7FF9F67DA760
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
jmp       short M05_L02
M05_L04
 
lea       rcx,[rsp+28]
mov       rdx,1D6A74480F8
call      qword ptr [7FF9F5FC58F0]
M05_L05
 
mov       rcx,[rsi+10]
mov       rcx,[rcx]
call      CORINFO_HELP_TYPEHANDLE_TO_RUNTIMETYPE
mov       r8,rax
lea       rcx,[rsp+28]
mov       rdx,offset MD_System.Runtime.CompilerServices.DefaultInterpolatedStringHandler.AppendFormatted[[System.Type, System.Private.CoreLib]](System.Type)
call      qword ptr [7FF9F621E100]; System.Runtime.CompilerServices.DefaultInterpolatedStringHandler.AppendFormatted[[System.__Canon, System.Private.CoreLib]](System.__Canon)
mov       ebx,[rsp+38]
cmp       ebx,[rsp+48]
jbe       short M05_L07
M05_L06
 
call      qword ptr [7FF9F603E9D0]
int       3
M05_L07
 
mov       rcx,[rsp+40]
mov       edx,ebx
lea       rcx,[rcx+rdx*2]
mov       edx,[rsp+48]
sub       edx,ebx
cmp       edx,1
jb        short M05_L08
mov       rdx,1D6A7430C54
movzx     eax,word ptr [rdx]
mov       [rcx],ax
mov       ecx,[rsp+38]
inc       ecx
mov       [rsp+38],ecx
jmp       short M05_L09
M05_L08
 
lea       rcx,[rsp+28]
mov       rdx,1D6A7430C48
call      qword ptr [7FF9F5FC58F0]
M05_L09
 
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
lea       rcx,[rsp+28]
call      qword ptr [7FF9F5FC5740]; System.Runtime.CompilerServices.DefaultInterpolatedStringHandler.ToStringAndClear()
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F6066718]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M05_L10
 
call      qword ptr [7FF9F6355368]
mov       rsi,rax
test      rsi,rsi
jne       short M05_L11
call      qword ptr [7FF9F63550B0]
mov       rsi,rax
M05_L11
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,1D6A74448E8
mov       r8,rsi
call      qword ptr [7FF9F6066670]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M05_L12
 
lea       rcx,[rsp+28]
mov       edx,2A
mov       r8d,1
call      qword ptr [7FF9F5FC56B0]; System.Runtime.CompilerServices.DefaultInterpolatedStringHandler..ctor(Int32, Int32)
mov       ecx,[rsp+38]
cmp       ecx,[rsp+48]
ja        near ptr M05_L06
mov       rdx,[rsp+40]
mov       eax,ecx
lea       rdx,[rdx+rax*2]
mov       eax,[rsp+48]
sub       eax,ecx
cmp       eax,29
jb        near ptr M05_L04
mov       rcx,1D6A7448104
vmovdqu   ymm0,ymmword ptr [rcx]
vmovdqu   ymm1,ymmword ptr [rcx+20]
vmovdqu   ymm2,ymmword ptr [rcx+32]
vmovdqu   ymmword ptr [rdx],ymm0
vmovdqu   ymmword ptr [rdx+20],ymm1
vmovdqu   ymmword ptr [rdx+32],ymm2
mov       ecx,[rsp+38]
add       ecx,29
mov       [rsp+38],ecx
jmp       near ptr M05_L05
 
System.Text.RegularExpressions.Regex.get_RegexReplacementWeakReference()
push      rdi
push      rsi
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rax,[rbx+30]
test      rax,rax
je        short M06_L01
M06_L00
 
add       rsp,20
pop       rbx
pop       rsi
pop       rdi
ret
M06_L01
 
lea       rsi,[rbx+30]
mov       rcx,offset MT_System.WeakReference`1[[System.Text.RegularExpressions.RegexReplacement, System.Text.RegularExpressions]]
call      CORINFO_HELP_NEWFAST
mov       rdi,rax
mov       rcx,rdi
xor       edx,edx
xor       r8d,r8d
call      qword ptr [7FF9F5E8D098]; System.WeakReference`1[[System.__Canon, System.Private.CoreLib]].Create(System.__Canon, Boolean)
mov       rcx,rsi
mov       rdx,rdi
xor       r8d,r8d
call      System.Threading.Interlocked.CompareExchange(System.Object ByRef, System.Object, System.Object)
test      rax,rax
jne       short M06_L00
mov       rax,[rbx+30]
jmp       short M06_L00
 
System.Text.RegularExpressions.RegexReplacement.GetOrCreate(System.WeakReference`1, System.String, System.Collections.Hashtable, Int32, System.Collections.Hashtable, System.Text.RegularExpressions.RegexOptions)
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,30
mov       rbx,rcx
mov       rsi,rdx
mov       rdi,r8
mov       ebp,r9d
mov       rax,[rbx+8]
and       rax,0FFFFFFFFFFFFFFFE
je        short M07_L03
test      al,2
jne       short M07_L04
mov       r14,[rax]
M07_L00
 
test      r14,r14
je        short M07_L02
mov       r15,[r14+18]
cmp       [r15],r15b
cmp       r15,rsi
jne       short M07_L05
M07_L01
 
mov       rax,r14
add       rsp,30
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
ret
M07_L02
 
mov       r13,[rsp+90]
mov       [rsp+20],r13
mov       rcx,rsi
mov       edx,[rsp+98]
mov       r8,rdi
mov       r9d,ebp
call      qword ptr [7FF9F689E0A0]; System.Text.RegularExpressions.RegexParser.ParseReplacement(System.String, System.Text.RegularExpressions.RegexOptions, System.Collections.Hashtable, Int32, System.Collections.Hashtable)
mov       r14,rax
mov       rcx,rbx
mov       rdx,r14
call      qword ptr [7FF9F5E8D0B0]; System.WeakReference`1[[System.__Canon, System.Private.CoreLib]].SetTarget(System.__Canon)
jmp       short M07_L01
M07_L03
 
xor       r14d,r14d
jmp       short M07_L00
M07_L04
 
and       rax,0FFFFFFFFFFFFFFFC
mov       rcx,[rax]
cmp       [rcx],ecx
call      qword ptr [7FF9F6A0EA78]
mov       r14,rax
jmp       short M07_L00
M07_L05
 
test      rsi,rsi
je        short M07_L02
mov       r8d,[r15+8]
cmp       r8d,[rsi+8]
jne       short M07_L02
lea       rcx,[r15+0C]
mov       r8d,[r15+8]
add       r8d,r8d
lea       rdx,[rsi+0C]
call      qword ptr [7FF9F5E85068]; System.SpanHelpers.SequenceEqual(Byte ByRef, Byte ByRef, UIntPtr)
test      eax,eax
jne       near ptr M07_L01
jmp       short M07_L02
 
System.Text.RegularExpressions.RegexReplacement.Replace(System.Text.RegularExpressions.Regex, System.String, Int32, Int32)
sub       rsp,28
mov       eax,[rsp+50]
cmp       r9d,0FFFFFFFF
jl        short M08_L01
cmp       [r8+8],eax
jb        short M08_L02
test      r9d,r9d
je        short M08_L03
test      byte ptr [rdx+40],40
je        short M08_L04
M08_L00
 
mov       [rsp+50],eax
add       rsp,28
jmp       qword ptr [7FF9F689DB90]; System.Text.RegularExpressions.RegexReplacement.ReplaceNonSimpleText(System.Text.RegularExpressions.Regex, System.String, Int32, Int32)
M08_L01
 
mov       ecx,3
mov       edx,1
call      qword ptr [7FF9F6A0E9A0]
int       3
M08_L02
 
mov       ecx,0E
xor       edx,edx
call      qword ptr [7FF9F6A0E9A0]
int       3
M08_L03
 
mov       rax,r8
add       rsp,28
ret
M08_L04
 
cmp       byte ptr [rcx+20],0
jne       short M08_L00
mov       r10,[rcx+10]
cmp       dword ptr [r10+8],0
jne       short M08_L05
mov       rcx,rdx
mov       r10,1D6A7430008
jmp       short M08_L06
M08_L05
 
mov       r10,[rcx+8]
cmp       dword ptr [r10+8],0
jbe       short M08_L07
mov       r10,[r10+10]
mov       rcx,rdx
M08_L06
 
mov       [rsp+50],eax
mov       rdx,r8
mov       r8,r10
add       rsp,28
jmp       qword ptr [7FF9F689DB78]
M08_L07
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M09_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M09_L02
test      rbx,rbx
je        short M09_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M09_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M09_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FF9F5E85B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FF9F5E85B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M09_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M09_L01
 
call      qword ptr [7FF9F603EF40]
int       3
M09_L02
 
test      rbx,rbx
je        short M09_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M09_L04
M09_L03
 
mov       rax,1D6A7430008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M09_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 
System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
push      rdi
push      rsi
push      rbx
sub       rsp,20
mov       rsi,rcx
mov       rbx,rdx
mov       rdi,[rbx]
M10_L00
 
mov       rdi,[rdi+10]
cmp       rdi,rsi
jne       short M10_L02
M10_L01
 
mov       rcx,7FF9F690BC5C
call      CORINFO_HELP_COUNTPROFILE32
mov       rax,rbx
add       rsp,20
pop       rbx
pop       rsi
pop       rdi
ret
M10_L02
 
test      rdi,rdi
je        near ptr M10_L08
mov       rdi,[rdi+10]
cmp       rdi,rsi
jne       short M10_L03
mov       rcx,7FF9F690BC58
call      CORINFO_HELP_COUNTPROFILE32
jmp       short M10_L01
M10_L03
 
test      rdi,rdi
je        short M10_L04
mov       rdi,[rdi+10]
cmp       rdi,rsi
jne       short M10_L05
mov       rcx,7FF9F690BC50
call      CORINFO_HELP_COUNTPROFILE32
jmp       short M10_L01
M10_L04
 
mov       rcx,7FF9F690BC54
call      CORINFO_HELP_COUNTPROFILE32
jmp       short M10_L08
M10_L05
 
test      rdi,rdi
je        short M10_L07
mov       rdi,[rdi+10]
cmp       rdi,rsi
je        short M10_L06
test      rdi,rdi
je        short M10_L09
mov       rcx,7FF9F690BC44
call      CORINFO_HELP_COUNTPROFILE32
jmp       near ptr M10_L00
M10_L06
 
mov       rcx,7FF9F690BC48
call      CORINFO_HELP_COUNTPROFILE32
jmp       near ptr M10_L01
M10_L07
 
mov       rcx,7FF9F690BC4C
call      CORINFO_HELP_COUNTPROFILE32
M10_L08
 
mov       rcx,7FF9F690BC60
call      CORINFO_HELP_COUNTPROFILE32
mov       rcx,rsi
mov       rdx,rbx
add       rsp,20
pop       rbx
pop       rsi
pop       rdi
jmp       qword ptr [7FF9F5DD43A8]
M10_L09
 
mov       rcx,7FF9F690BC40
call      CORINFO_HELP_COUNTPROFILE32
jmp       short M10_L08
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.RemoveCRLF01()
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,40
xor       eax,eax
mov       [rsp+38],rax
mov       [rsp+30],rax
mov       rbx,rcx
mov       rcx,[rbx+298]
test      rcx,rcx
je        near ptr M00_L07
mov       [rsp+38],rcx
mov       rcx,275F740EF18
mov       rsi,[rcx]
cmp       byte ptr [rsi+9E],0
jne       short M00_L00
mov       rcx,rsi
call      qword ptr [7FF9F62D6A48]; System.Text.Json.JsonSerializerOptions.ConfigureForJsonSerializer()
M00_L00
 
mov       rcx,rsi
call      qword ptr [7FF9F62D6358]; System.Text.Json.JsonSerializerOptions.get_ObjectTypeInfo()
mov       r8,rax
test      r8,r8
jne       short M00_L02
M00_L01
 
lea       rdx,[rsp+38]
mov       rcx,offset MD_System.Text.Json.JsonSerializer.WriteString[[System.Object, System.Private.CoreLib]](System.Object ByRef, System.Text.Json.Serialization.Metadata.JsonTypeInfo`1)
call      qword ptr [7FF9F675D200]; System.Text.Json.JsonSerializer.WriteString[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef, System.Text.Json.Serialization.Metadata.JsonTypeInfo`1)
test      rax,rax
je        short M00_L03
mov       ecx,[rax+8]
xor       edx,edx
test      ecx,ecx
sete      dl
test      edx,edx
sete      dl
movzx     edx,dl
test      ecx,ecx
jne       short M00_L04
jmp       short M00_L04
M00_L02
 
mov       rcx,offset MT_System.Text.Json.Serialization.Metadata.JsonTypeInfo`1[[System.Object, System.Private.CoreLib]]
cmp       [r8],rcx
jne       near ptr M00_L08
jmp       short M00_L01
M00_L03
 
xor       edx,edx
M00_L04
 
test      edx,edx
je        near ptr M00_L09
mov       rcx,rax
cmp       [rcx],ecx
call      qword ptr [7FF9F5DB7318]; System.String.Trim()
mov       rdx,rax
mov       rcx,offset MD_DotNetTips.Spargine.Core.Serialization.JsonSerialization.Deserialize[[System.String, System.Private.CoreLib]](System.String)
call      qword ptr [7FF9F67ACF30]; DotNetTips.Spargine.Core.Serialization.JsonSerialization.Deserialize[[System.__Canon, System.Private.CoreLib]](System.String)
mov       rsi,rax
test      rsi,rsi
je        near ptr M00_L12
mov       rcx,275F740DC68
mov       rdi,[rcx]
mov       rbp,rsi
test      byte ptr [rdi+40],40
je        near ptr M00_L11
mov       r14d,[rsi+8]
M00_L05
 
mov       rcx,rdi
call      qword ptr [7FF9F61FD830]; System.Text.RegularExpressions.Regex.get_RegexReplacementWeakReference()
mov       rcx,rax
mov       r8,[rdi+20]
mov       [rsp+20],r8
mov       r8d,[rdi+40]
mov       [rsp+28],r8d
mov       r8,[rdi+18]
mov       r9d,[rdi+44]
mov       rdx,2B681570008
call      qword ptr [7FF9F687DB00]; System.Text.RegularExpressions.RegexReplacement.GetOrCreate(System.WeakReference`1, System.String, System.Collections.Hashtable, Int32, System.Collections.Hashtable, System.Text.RegularExpressions.RegexOptions)
mov       rcx,rax
mov       [rsp+20],r14d
mov       rdx,rdi
mov       r8,rsi
mov       r9d,0FFFFFFFF
cmp       [rcx],ecx
call      qword ptr [7FF9F687DB60]; System.Text.RegularExpressions.RegexReplacement.Replace(System.Text.RegularExpressions.Regex, System.String, Int32, Int32)
M00_L06
 
mov       [rsp+30],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+30]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,40
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
ret
M00_L07
 
call      qword ptr [7FF9F63352C0]
mov       ecx,7D9
mov       rdx,7FF9F62B3C60
call      CORINFO_HELP_STRCNS
mov       rbp,rax
mov       ecx,1446
mov       rdx,7FF9F6145A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbp
call      qword ptr [7FF9F5DB6B08]; System.String.Concat(System.String, System.String)
mov       r14,rax
mov       ecx,1
mov       rdx,7FF9F62B3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,r14
call      qword ptr [7FF9F5DB6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63350B0]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FF9F6046670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L08
 
mov       rdx,rax
call      qword ptr [7FF9F5DB43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M00_L09
 
call      qword ptr [7FF9F6335368]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L10
call      qword ptr [7FF9F63350B0]
mov       rbx,rax
M00_L10
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,2B6815848E8
mov       r8,rbx
call      qword ptr [7FF9F6046670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L11
 
mov       rsi,rbp
xor       r14d,r14d
jmp       near ptr M00_L05
M00_L12
 
xor       eax,eax
jmp       near ptr M00_L06
 
System.Text.Json.JsonSerializerOptions.ConfigureForJsonSerializer()
M01_L00
 
push      rbp
sub       rsp,80
vzeroupper
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
mov       rax,0FFFFFFFFFFFFFFA0
M01_L01
 
vmovdqa   xmmword ptr [rax+rbp],xmm4
vmovdqa   xmmword ptr [rbp+rax+10],xmm4
vmovdqa   xmmword ptr [rbp+rax+20],xmm4
add       rax,30
jne       short M01_L01
mov       [rbp+10],rcx
call      qword ptr [7FF9F62D7780]; System.Text.Json.JsonSerializer.get_IsReflectionEnabledByDefault()
test      eax,eax
je        near ptr M01_L05
call      qword ptr [7FF9F633DA40]; System.Text.Json.Serialization.Metadata.DefaultJsonTypeInfoResolver.get_DefaultInstance()
mov       [rbp-18],rax
mov       rdx,[rbp+10]
mov       rdx,[rdx+20]
mov       [rbp-30],rdx
cmp       qword ptr [rbp-30],0
je        short M01_L02
mov       rdx,[rbp-30]
mov       rcx,offset MT_System.Text.Json.Serialization.JsonSerializerContext
call      qword ptr [7FF9F5DB4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       [rbp-28],rax
cmp       qword ptr [rbp-28],0
jne       short M01_L03
jmp       near ptr M01_L09
M01_L02
 
mov       rcx,[rbp+10]
lea       rcx,[rcx+20]
mov       rdx,[rbp-18]
call      CORINFO_HELP_ASSIGN_REF
jmp       near ptr M01_L09
M01_L03
 
call      qword ptr [7FF9F62D7180]
test      eax,eax
je        near ptr M01_L09
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rbp-10],xmm0
lea       rdx,[rbp-10]
mov       rcx,offset MD_.InlineArrayElementRef[[<>y__InlineArray2`1[[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]], System.Text.Json],[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]](<>y__InlineArray2`1 ByRef, Int32)
xor       r8d,r8d
call      qword ptr [7FF9F633DC50]
mov       rdx,[rbp-28]
mov       rcx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rdx,[rbp-10]
mov       rcx,offset MD_.InlineArrayElementRef[[<>y__InlineArray2`1[[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]], System.Text.Json],[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]](<>y__InlineArray2`1 ByRef, Int32)
mov       r8d,1
call      qword ptr [7FF9F633DC50]
mov       rdx,[rbp-18]
mov       rcx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rbp-48]
lea       r8,[rbp-10]
mov       rdx,offset MD_.InlineArrayAsReadOnlySpan[[<>y__InlineArray2`1[[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]], System.Text.Json],[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]](<>y__InlineArray2`1 ByRef, Int32)
mov       r9d,2
call      qword ptr [7FF9F633DC80]
mov       rcx,[rbp+10]
lea       rcx,[rcx+60]
mov       [rbp-60],rcx
vmovdqu   xmm0,xmmword ptr [rbp-48]
vmovdqu   xmmword ptr [rbp-58],xmm0
lea       rcx,[rbp-58]
call      qword ptr [7FF9F633DCC8]
mov       rcx,[rbp-60]
mov       rdx,rax
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rbp+10]
mov       rcx,[rcx+8]
mov       [rbp-20],rcx
cmp       qword ptr [rbp-20],0
je        near ptr M01_L09
mov       rcx,[rbp-20]
cmp       [rcx],ecx
call      qword ptr [7FF9F633DAE8]; System.Text.Json.JsonSerializerOptions+CachingContext.get_Options()
cmp       rax,[rbp+10]
je        short M01_L04
mov       rcx,[rbp-20]
cmp       [rcx],ecx
call      qword ptr [7FF9F633DAE8]; System.Text.Json.JsonSerializerOptions+CachingContext.get_Options()
movzx     ecx,byte ptr [rax+9E]
test      ecx,ecx
jne       short M01_L04
mov       rcx,[rbp-20]
cmp       [rcx],ecx
call      qword ptr [7FF9F633DAE8]; System.Text.Json.JsonSerializerOptions+CachingContext.get_Options()
mov       rcx,rax
cmp       [rcx],ecx
call      qword ptr [7FF9F62D6A48]
jmp       short M01_L09
M01_L04
 
mov       rcx,[rbp-20]
cmp       [rcx],ecx
call      qword ptr [7FF9F633DB60]
jmp       short M01_L09
M01_L05
 
mov       rdx,[rbp+10]
mov       rdx,[rdx+20]
mov       [rbp-30],rdx
cmp       qword ptr [rbp-30],0
je        short M01_L06
mov       rdx,[rbp-30]
mov       rcx,offset MT_System.Text.Json.Serialization.Metadata.EmptyJsonTypeInfoResolver
call      qword ptr [7FF9F5DB4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
test      rax,rax
je        short M01_L07
M01_L06
 
mov       dword ptr [rbp-34],1
jmp       short M01_L08
M01_L07
 
xor       eax,eax
mov       [rbp-34],eax
M01_L08
 
cmp       dword ptr [rbp-34],0
je        short M01_L09
call      qword ptr [7FF9F62DD098]
M01_L09
 
mov       rax,[rbp+10]
mov       byte ptr [rax+9D],1
mov       rax,[rbp+10]
mov       byte ptr [rax+9E],1
add       rsp,80
pop       rbp
ret
 
System.Text.Json.JsonSerializerOptions.get_ObjectTypeInfo()
push      rsi
push      rbx
sub       rsp,38
mov       rbx,rcx
mov       rax,[rbx+18]
test      rax,rax
je        short M02_L01
M02_L00
 
add       rsp,38
pop       rbx
pop       rsi
ret
M02_L01
 
mov       byte ptr [rsp+30],1
mov       byte ptr [rsp+31],1
xor       ecx,ecx
mov       [rsp+20],ecx
mov       [rsp+28],ecx
mov       rcx,rbx
movzx     r9d,word ptr [rsp+30]
mov       rdx,2B681572D10
mov       r8d,1
call      qword ptr [7FF9F62D62F8]; System.Text.Json.JsonSerializerOptions.GetTypeInfoInternal(System.Type, Boolean, System.Nullable`1, Boolean, Boolean)
mov       rsi,rax
lea       rcx,[rbx+18]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rax,rsi
jmp       short M02_L00
 
System.Text.Json.JsonSerializer.WriteString[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef, System.Text.Json.Serialization.Metadata.JsonTypeInfo`1)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,88
vzeroupper
lea       rbp,[rsp+0C0]
xor       eax,eax
mov       [rbp-98],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-90],xmm4
vmovdqa   xmmword ptr [rbp-80],xmm4
vmovdqa   xmmword ptr [rbp-70],xmm4
vmovdqa   xmmword ptr [rbp-60],xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
mov       [rbp-40],rax
mov       [rbp-0A0],rsp
mov       rsi,rdx
mov       rbx,r8
mov       rdi,[rbx+0B0]
lea       rdx,[rbp-48]
mov       rcx,rdi
cmp       [rcx],ecx
call      qword ptr [7FF9F62D6AC0]; System.Text.Json.JsonSerializerOptions.GetWriterOptions()
mov       edi,[rdi+7C]
mov       rcx,gs:[58]
mov       rcx,[rcx+40]
cmp       dword ptr [rcx+190],3
jl        near ptr M03_L11
mov       rcx,[rcx+198]
mov       rcx,[rcx+18]
test      rcx,rcx
je        near ptr M03_L11
mov       rax,[rcx]
add       rax,10
mov       r14,[rax]
test      r14,r14
je        near ptr M03_L12
M03_L00
 
mov       ecx,[r14+18]
lea       edx,[rcx+1]
mov       [r14+18],edx
test      ecx,ecx
jne       near ptr M03_L15
mov       rcx,[r14+8]
mov       [rbp-90],rcx
mov       r14,[r14+10]
mov       rcx,[rbp-90]
cmp       [rcx],cl
mov       rcx,275F7401F20
mov       rcx,[rcx]
mov       edx,edi
call      qword ptr [7FF9F65B4018]; System.Buffers.SharedArrayPool`1[[System.Byte, System.Private.CoreLib]].Rent(Int32)
mov       rcx,[rbp-90]
lea       rcx,[rcx+10]
mov       rdx,rax
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rbp-90]
xor       edx,edx
mov       [rcx+20],edx
lea       rcx,[r14+8]
mov       rdx,[rbp-90]
call      CORINFO_HELP_ASSIGN_REF
mov       edi,[rbp-3C]
lea       rcx,[r14+68]
mov       rdx,[rbp-48]
call      CORINFO_HELP_ASSIGN_REF
mov       ecx,[rbp-40]
mov       [r14+70],ecx
mov       ecx,[rbp-3C]
mov       [r14+74],ecx
mov       ecx,9
mov       edx,20
test      byte ptr [r14+74],8
cmove     ecx,edx
mov       [r14+3B],cl
mov       ecx,edi
and       ecx,7F0
sar       ecx,4
je        short M03_L01
xor       edx,edx
cmp       ecx,2
cmovne    edx,ecx
jmp       short M03_L02
M03_L01
 
mov       edx,2
M03_L02
 
mov       [r14+2C],edx
test      dil,4
jne       near ptr M03_L13
mov       rdi,2B681571C08
M03_L03
 
mov       ecx,[rdi+8]
mov       [r14+30],ecx
cmp       dword ptr [r14+70],0
je        near ptr M03_L14
M03_L04
 
mov       [rbp-88],r14
mov       rcx,rbx
mov       rdx,r14
mov       r8,rsi
xor       r9d,r9d
call      qword ptr [7FF9F633D1E8]; System.Text.Json.Serialization.Metadata.JsonTypeInfo`1[[System.__Canon, System.Private.CoreLib]].Serialize(System.Text.Json.Utf8JsonWriter, System.__Canon ByRef, System.Object)
mov       rcx,[rbp-90]
mov       rcx,[rcx+10]
mov       rax,[rbp-90]
mov       r15d,[rax+20]
test      rcx,rcx
je        short M03_L08
cmp       [rcx+8],r15d
jb        short M03_L07
M03_L05
 
xor       r13d,r13d
xor       r12d,r12d
test      rcx,rcx
je        short M03_L10
mov       rax,[rcx]
test      dword ptr [rax],80000000
je        short M03_L09
lea       r13,[rcx+10]
mov       r12d,[rcx+8]
M03_L06
 
cmp       r15d,r12d
ja        short M03_L07
mov       r12d,r15d
jmp       short M03_L10
M03_L07
 
call      qword ptr [7FF9F601E9D0]
int       3
M03_L08
 
test      r15d,r15d
jne       short M03_L07
xor       ecx,ecx
xor       r15d,r15d
jmp       short M03_L05
M03_L09
 
lea       rdx,[rbp-58]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+28]
mov       r13,[rbp-58]
mov       r12d,[rbp-50]
jmp       short M03_L06
M03_L10
 
mov       rcx,r13
mov       [rbp-80],rcx
mov       [rbp-78],r12d
lea       rcx,[rbp-80]
call      qword ptr [7FF9F633E718]; System.Text.Json.JsonReaderHelper.TranscodeHelper(System.ReadOnlySpan`1)
mov       [rbp-98],rax
mov       rcx,rsp
call      M03_L16
nop
mov       rax,[rbp-98]
add       rsp,88
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M03_L11
 
mov       ecx,3
call      CORINFO_HELP_GETSHARED_GCTHREADSTATIC_BASE_NOCTOR_OPTIMIZED
mov       r14,[rax]
test      r14,r14
jne       near ptr M03_L00
M03_L12
 
mov       rcx,offset MT_System.Text.Json.Utf8JsonWriterCache+ThreadLocalState
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
call      qword ptr [7FF9F675E028]; System.Text.Json.Utf8JsonWriterCache+ThreadLocalState..ctor()
mov       ecx,3
call      CORINFO_HELP_GETSHARED_GCTHREADSTATIC_BASE_NOCTOR_OPTIMIZED
mov       rcx,rax
mov       rdx,r14
call      CORINFO_HELP_ASSIGN_REF
jmp       near ptr M03_L00
M03_L13
 
mov       rcx,7FF9F62E4D40
mov       edx,69
call      CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
mov       rcx,275F740F9D0
mov       rdi,[rcx]
jmp       near ptr M03_L03
M03_L14
 
lea       rcx,[r14+68]
mov       edx,3E8
call      qword ptr [7FF9F6697A20]; System.Text.Json.JsonWriterOptions.set_MaxDepth(Int32)
jmp       near ptr M03_L04
M03_L15
 
mov       rcx,offset MT_System.Text.Json.PooledByteBufferWriter
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       edx,edi
call      qword ptr [7FF9F6707DB0]
mov       [rbp-90],r14
mov       rcx,offset MT_System.Text.Json.Utf8JsonWriter
call      CORINFO_HELP_NEWSFAST
mov       r13,rax
mov       rdx,r14
vmovdqu   xmm0,xmmword ptr [rbp-48]
vmovdqu   xmmword ptr [rbp-70],xmm0
mov       rcx,r13
lea       r8,[rbp-70]
call      qword ptr [7FF9F669C0D8]
mov       r14,r13
jmp       near ptr M03_L04
M03_L16
 
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,28
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+0C0]
mov       r14,[rbp-90]
mov       rcx,gs:[58]
mov       rcx,[rcx+40]
cmp       dword ptr [rcx+190],3
jl        short M03_L17
mov       rcx,[rcx+198]
mov       rcx,[rcx+18]
test      rcx,rcx
jne       short M03_L18
M03_L17
 
mov       ecx,3
call      CORINFO_HELP_GETSHARED_GCTHREADSTATIC_BASE_NOCTOR_OPTIMIZED
jmp       short M03_L19
M03_L18
 
mov       rax,[rcx]
add       rax,10
M03_L19
 
mov       r15,[rax]
xor       ecx,ecx
mov       r12,[rbp-88]
mov       [r12+34],ecx
mov       [r12+20],rcx
mov       [r12+40],rcx
mov       [r12+48],rcx
mov       byte ptr [r12+38],0
mov       byte ptr [r12+3A],0
mov       byte ptr [r12+39],0
mov       [r12+28],ecx
mov       [r12+50],rcx
mov       [r12+58],rcx
mov       [r12+60],rcx
mov       [r12+10],rcx
mov       [r12+18],rcx
mov       [r12+8],rcx
mov       rcx,[rbp-90]
mov       rcx,[rcx+10]
mov       rdx,[rbp-90]
mov       r10d,[rdx+20]
test      rcx,rcx
jne       short M03_L20
test      r10d,r10d
jne       short M03_L21
xor       ecx,ecx
xor       r10d,r10d
jmp       short M03_L23
M03_L20
 
cmp       [rcx+8],r10d
jae       short M03_L22
M03_L21
 
call      qword ptr [7FF9F601E9D0]
int       3
M03_L22
 
add       rcx,10
M03_L23
 
mov       edx,r10d
mov       [rbp-60],rdx
test      rdx,rdx
je        short M03_L25
cmp       rdx,300
ja        short M03_L24
xor       edx,edx
mov       r8d,[rbp-60]
call      CORINFO_HELP_MEMSET
jmp       short M03_L25
M03_L24
 
mov       rdx,[rbp-60]
call      qword ptr [7FF9F5E65BA8]; System.Buffer._ZeroMemory(Byte ByRef, UIntPtr)
M03_L25
 
xor       ecx,ecx
mov       [r14+20],ecx
mov       rdx,[r14+10]
mov       [r14+10],rcx
mov       rcx,275F7401F20
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65B4020]; System.Buffers.SharedArrayPool`1[[System.Byte, System.Private.CoreLib]].Return(Byte[], Boolean)
dec       dword ptr [r15+18]
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Trim()
push      rsi
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,[rbx+8]
test      esi,esi
je        short M04_L03
movzx     ecx,word ptr [rbx+0C]
cmp       ecx,100
jae       short M04_L00
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       short M04_L04
jmp       short M04_L01
M04_L00
 
call      qword ptr [7FF9F68D72E8]
test      eax,eax
jne       short M04_L04
M04_L01
 
dec       esi
mov       ecx,esi
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L02
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       short M04_L04
jmp       short M04_L03
M04_L02
 
call      qword ptr [7FF9F68D72E8]
test      eax,eax
jne       short M04_L04
M04_L03
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rsi
ret
M04_L04
 
mov       rcx,rbx
mov       edx,3
call      qword ptr [7FF9F5DB73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
nop
add       rsp,28
pop       rbx
pop       rsi
ret
 
DotNetTips.Spargine.Core.Serialization.JsonSerialization.Deserialize[[System.__Canon, System.Private.CoreLib]](System.String)
push      rsi
push      rbx
sub       rsp,58
vzeroupper
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
mov       [rsp+50],rcx
mov       rsi,rcx
mov       rbx,rdx
mov       rcx,rbx
test      rcx,rcx
je        short M05_L00
mov       eax,[rcx+8]
xor       edx,edx
test      eax,eax
sete      dl
test      edx,edx
sete      dl
movzx     edx,dl
test      eax,eax
jne       short M05_L01
jmp       short M05_L01
M05_L00
 
xor       edx,edx
M05_L01
 
test      edx,edx
je        near ptr M05_L10
cmp       [rcx],ecx
call      qword ptr [7FF9F5DB7318]; System.String.Trim()
mov       rbx,rax
mov       rcx,[rsi+10]
mov       rcx,[rcx+10]
test      rcx,rcx
je        short M05_L03
M05_L02
 
mov       r8,275F740DD88
mov       r8,[r8]
mov       rdx,rbx
call      qword ptr [7FF9F67ACF90]; System.Text.Json.JsonSerializer.Deserialize[[System.__Canon, System.Private.CoreLib]](System.String, System.Text.Json.JsonSerializerOptions)
test      rax,rax
je        near ptr M05_L12
add       rsp,58
pop       rbx
pop       rsi
ret
M05_L03
 
mov       rcx,rsi
mov       rdx,7FF9F67BA8B0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
jmp       short M05_L02
M05_L04
 
lea       rcx,[rsp+28]
mov       rdx,2B6815880F8
call      qword ptr [7FF9F5FA58F0]
M05_L05
 
mov       rcx,[rsi+10]
mov       rcx,[rcx]
call      CORINFO_HELP_TYPEHANDLE_TO_RUNTIMETYPE
mov       r8,rax
lea       rcx,[rsp+28]
mov       rdx,offset MD_System.Runtime.CompilerServices.DefaultInterpolatedStringHandler.AppendFormatted[[System.Type, System.Private.CoreLib]](System.Type)
call      qword ptr [7FF9F61FE100]; System.Runtime.CompilerServices.DefaultInterpolatedStringHandler.AppendFormatted[[System.__Canon, System.Private.CoreLib]](System.__Canon)
mov       ebx,[rsp+38]
cmp       ebx,[rsp+48]
jbe       short M05_L07
M05_L06
 
call      qword ptr [7FF9F601E9D0]
int       3
M05_L07
 
mov       rcx,[rsp+40]
mov       edx,ebx
lea       rcx,[rcx+rdx*2]
mov       edx,[rsp+48]
sub       edx,ebx
cmp       edx,1
jb        short M05_L08
mov       rdx,2B681570C54
movzx     eax,word ptr [rdx]
mov       [rcx],ax
mov       ecx,[rsp+38]
inc       ecx
mov       [rsp+38],ecx
jmp       short M05_L09
M05_L08
 
lea       rcx,[rsp+28]
mov       rdx,2B681570C48
call      qword ptr [7FF9F5FA58F0]
M05_L09
 
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
lea       rcx,[rsp+28]
call      qword ptr [7FF9F5FA5740]; System.Runtime.CompilerServices.DefaultInterpolatedStringHandler.ToStringAndClear()
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F6046718]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M05_L10
 
call      qword ptr [7FF9F6335368]
mov       rsi,rax
test      rsi,rsi
jne       short M05_L11
call      qword ptr [7FF9F63350B0]
mov       rsi,rax
M05_L11
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,2B6815848E8
mov       r8,rsi
call      qword ptr [7FF9F6046670]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M05_L12
 
lea       rcx,[rsp+28]
mov       edx,2A
mov       r8d,1
call      qword ptr [7FF9F5FA56B0]; System.Runtime.CompilerServices.DefaultInterpolatedStringHandler..ctor(Int32, Int32)
mov       ecx,[rsp+38]
cmp       ecx,[rsp+48]
ja        near ptr M05_L06
mov       rdx,[rsp+40]
mov       eax,ecx
lea       rdx,[rdx+rax*2]
mov       eax,[rsp+48]
sub       eax,ecx
cmp       eax,29
jb        near ptr M05_L04
mov       rcx,2B681588104
vmovdqu   ymm0,ymmword ptr [rcx]
vmovdqu   ymm1,ymmword ptr [rcx+20]
vmovdqu   ymm2,ymmword ptr [rcx+32]
vmovdqu   ymmword ptr [rdx],ymm0
vmovdqu   ymmword ptr [rdx+20],ymm1
vmovdqu   ymmword ptr [rdx+32],ymm2
mov       ecx,[rsp+38]
add       ecx,29
mov       [rsp+38],ecx
jmp       near ptr M05_L05
 
System.Text.RegularExpressions.Regex.get_RegexReplacementWeakReference()
push      rdi
push      rsi
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rax,[rbx+30]
test      rax,rax
je        short M06_L01
M06_L00
 
add       rsp,20
pop       rbx
pop       rsi
pop       rdi
ret
M06_L01
 
lea       rsi,[rbx+30]
mov       rcx,offset MT_System.WeakReference`1[[System.Text.RegularExpressions.RegexReplacement, System.Text.RegularExpressions]]
call      CORINFO_HELP_NEWFAST
mov       rdi,rax
mov       rcx,rdi
xor       edx,edx
xor       r8d,r8d
call      qword ptr [7FF9F5E6D098]; System.WeakReference`1[[System.__Canon, System.Private.CoreLib]].Create(System.__Canon, Boolean)
mov       rcx,rsi
mov       rdx,rdi
xor       r8d,r8d
call      System.Threading.Interlocked.CompareExchange(System.Object ByRef, System.Object, System.Object)
test      rax,rax
jne       short M06_L00
mov       rax,[rbx+30]
jmp       short M06_L00
 
System.Text.RegularExpressions.RegexReplacement.GetOrCreate(System.WeakReference`1, System.String, System.Collections.Hashtable, Int32, System.Collections.Hashtable, System.Text.RegularExpressions.RegexOptions)
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,30
mov       rbx,rcx
mov       rsi,rdx
mov       rdi,r8
mov       ebp,r9d
mov       rax,[rbx+8]
and       rax,0FFFFFFFFFFFFFFFE
je        short M07_L03
test      al,2
jne       short M07_L04
mov       r14,[rax]
M07_L00
 
test      r14,r14
je        short M07_L02
mov       r15,[r14+18]
cmp       [r15],r15b
cmp       r15,rsi
jne       short M07_L05
M07_L01
 
mov       rax,r14
add       rsp,30
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
ret
M07_L02
 
mov       r13,[rsp+90]
mov       [rsp+20],r13
mov       rcx,rsi
mov       edx,[rsp+98]
mov       r8,rdi
mov       r9d,ebp
call      qword ptr [7FF9F687E0A0]; System.Text.RegularExpressions.RegexParser.ParseReplacement(System.String, System.Text.RegularExpressions.RegexOptions, System.Collections.Hashtable, Int32, System.Collections.Hashtable)
mov       r14,rax
mov       rcx,rbx
mov       rdx,r14
call      qword ptr [7FF9F5E6D0B0]; System.WeakReference`1[[System.__Canon, System.Private.CoreLib]].SetTarget(System.__Canon)
jmp       short M07_L01
M07_L03
 
xor       r14d,r14d
jmp       short M07_L00
M07_L04
 
and       rax,0FFFFFFFFFFFFFFFC
mov       rcx,[rax]
cmp       [rcx],ecx
call      qword ptr [7FF9F6A44F60]
mov       r14,rax
jmp       short M07_L00
M07_L05
 
test      rsi,rsi
je        short M07_L02
mov       r8d,[r15+8]
cmp       r8d,[rsi+8]
jne       short M07_L02
lea       rcx,[r15+0C]
mov       r8d,[r15+8]
add       r8d,r8d
lea       rdx,[rsi+0C]
call      qword ptr [7FF9F5E65068]; System.SpanHelpers.SequenceEqual(Byte ByRef, Byte ByRef, UIntPtr)
test      eax,eax
jne       near ptr M07_L01
jmp       short M07_L02
 
System.Text.RegularExpressions.RegexReplacement.Replace(System.Text.RegularExpressions.Regex, System.String, Int32, Int32)
sub       rsp,28
mov       eax,[rsp+50]
cmp       r9d,0FFFFFFFF
jl        short M08_L01
cmp       [r8+8],eax
jb        short M08_L02
test      r9d,r9d
je        short M08_L03
test      byte ptr [rdx+40],40
je        short M08_L04
M08_L00
 
mov       [rsp+50],eax
add       rsp,28
jmp       qword ptr [7FF9F687DB90]; System.Text.RegularExpressions.RegexReplacement.ReplaceNonSimpleText(System.Text.RegularExpressions.Regex, System.String, Int32, Int32)
M08_L01
 
mov       ecx,3
mov       edx,1
call      qword ptr [7FF9F6A44E88]
int       3
M08_L02
 
mov       ecx,0E
xor       edx,edx
call      qword ptr [7FF9F6A44E88]
int       3
M08_L03
 
mov       rax,r8
add       rsp,28
ret
M08_L04
 
cmp       byte ptr [rcx+20],0
jne       short M08_L00
mov       r10,[rcx+10]
cmp       dword ptr [r10+8],0
jne       short M08_L05
mov       rcx,rdx
mov       r10,2B681570008
jmp       short M08_L06
M08_L05
 
mov       r10,[rcx+8]
cmp       dword ptr [r10+8],0
jbe       short M08_L07
mov       r10,[r10+10]
mov       rcx,rdx
M08_L06
 
mov       [rsp+50],eax
mov       rdx,r8
mov       r8,r10
add       rsp,28
jmp       qword ptr [7FF9F687DB78]
M08_L07
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M09_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M09_L02
test      rbx,rbx
je        short M09_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M09_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M09_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FF9F5E65B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FF9F5E65B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M09_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M09_L01
 
call      qword ptr [7FF9F601EF40]
int       3
M09_L02
 
test      rbx,rbx
je        short M09_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M09_L04
M09_L03
 
mov       rax,2B681570008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M09_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 
System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
push      rdi
push      rsi
push      rbx
sub       rsp,20
mov       rsi,rcx
mov       rbx,rdx
mov       rdi,[rbx]
M10_L00
 
mov       rdi,[rdi+10]
cmp       rdi,rsi
jne       short M10_L02
M10_L01
 
mov       rcx,7FF9F68EBCCC
call      CORINFO_HELP_COUNTPROFILE32
mov       rax,rbx
add       rsp,20
pop       rbx
pop       rsi
pop       rdi
ret
M10_L02
 
test      rdi,rdi
je        near ptr M10_L08
mov       rdi,[rdi+10]
cmp       rdi,rsi
jne       short M10_L03
mov       rcx,7FF9F68EBCC8
call      CORINFO_HELP_COUNTPROFILE32
jmp       short M10_L01
M10_L03
 
test      rdi,rdi
je        short M10_L04
mov       rdi,[rdi+10]
cmp       rdi,rsi
jne       short M10_L05
mov       rcx,7FF9F68EBCC0
call      CORINFO_HELP_COUNTPROFILE32
jmp       short M10_L01
M10_L04
 
mov       rcx,7FF9F68EBCC4
call      CORINFO_HELP_COUNTPROFILE32
jmp       short M10_L08
M10_L05
 
test      rdi,rdi
je        short M10_L07
mov       rdi,[rdi+10]
cmp       rdi,rsi
je        short M10_L06
test      rdi,rdi
je        short M10_L09
mov       rcx,7FF9F68EBCB4
call      CORINFO_HELP_COUNTPROFILE32
jmp       near ptr M10_L00
M10_L06
 
mov       rcx,7FF9F68EBCB8
call      CORINFO_HELP_COUNTPROFILE32
jmp       near ptr M10_L01
M10_L07
 
mov       rcx,7FF9F68EBCBC
call      CORINFO_HELP_COUNTPROFILE32
M10_L08
 
mov       rcx,7FF9F68EBCD0
call      CORINFO_HELP_COUNTPROFILE32
mov       rcx,rsi
mov       rdx,rbx
add       rsp,20
pop       rbx
pop       rsi
pop       rdi
jmp       qword ptr [7FF9F5DB43A8]
M10_L09
 
mov       rcx,7FF9F68EBCB0
call      CORINFO_HELP_COUNTPROFILE32
jmp       short M10_L08
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.RemoveCRLF01()
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,40
xor       eax,eax
mov       [rsp+38],rax
mov       [rsp+30],rax
mov       rbx,rcx
mov       rcx,[rbx+298]
test      rcx,rcx
je        near ptr M00_L07
mov       [rsp+38],rcx
mov       rcx,1931A00EF18
mov       rsi,[rcx]
cmp       byte ptr [rsi+9E],0
jne       short M00_L00
mov       rcx,rsi
call      qword ptr [7FF9F6306A48]; System.Text.Json.JsonSerializerOptions.ConfigureForJsonSerializer()
M00_L00
 
mov       rcx,rsi
call      qword ptr [7FF9F6306358]; System.Text.Json.JsonSerializerOptions.get_ObjectTypeInfo()
mov       r8,rax
test      r8,r8
jne       short M00_L02
M00_L01
 
lea       rdx,[rsp+38]
mov       rcx,offset MD_System.Text.Json.JsonSerializer.WriteString[[System.Object, System.Private.CoreLib]](System.Object ByRef, System.Text.Json.Serialization.Metadata.JsonTypeInfo`1)
call      qword ptr [7FF9F678D200]; System.Text.Json.JsonSerializer.WriteString[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef, System.Text.Json.Serialization.Metadata.JsonTypeInfo`1)
test      rax,rax
je        short M00_L03
mov       ecx,[rax+8]
xor       edx,edx
test      ecx,ecx
sete      dl
test      edx,edx
sete      dl
movzx     edx,dl
test      ecx,ecx
jne       short M00_L04
jmp       short M00_L04
M00_L02
 
mov       rcx,offset MT_System.Text.Json.Serialization.Metadata.JsonTypeInfo`1[[System.Object, System.Private.CoreLib]]
cmp       [r8],rcx
jne       near ptr M00_L08
jmp       short M00_L01
M00_L03
 
xor       edx,edx
M00_L04
 
test      edx,edx
je        near ptr M00_L09
mov       rcx,rax
cmp       [rcx],ecx
call      qword ptr [7FF9F5DE7318]; System.String.Trim()
mov       rdx,rax
mov       rcx,offset MD_DotNetTips.Spargine.Core.Serialization.JsonSerialization.Deserialize[[System.String, System.Private.CoreLib]](System.String)
call      qword ptr [7FF9F67DCF30]; DotNetTips.Spargine.Core.Serialization.JsonSerialization.Deserialize[[System.__Canon, System.Private.CoreLib]](System.String)
mov       rsi,rax
test      rsi,rsi
je        near ptr M00_L12
mov       rcx,1931A00DC68
mov       rdi,[rcx]
mov       rbp,rsi
test      byte ptr [rdi+40],40
je        near ptr M00_L11
mov       r14d,[rsi+8]
M00_L05
 
mov       rcx,rdi
call      qword ptr [7FF9F622D830]; System.Text.RegularExpressions.Regex.get_RegexReplacementWeakReference()
mov       rcx,rax
mov       r8,[rdi+20]
mov       [rsp+20],r8
mov       r8d,[rdi+40]
mov       [rsp+28],r8d
mov       r8,[rdi+18]
mov       r9d,[rdi+44]
mov       rdx,1D3A7F90008
call      qword ptr [7FF9F68ADB00]; System.Text.RegularExpressions.RegexReplacement.GetOrCreate(System.WeakReference`1, System.String, System.Collections.Hashtable, Int32, System.Collections.Hashtable, System.Text.RegularExpressions.RegexOptions)
mov       rcx,rax
mov       [rsp+20],r14d
mov       rdx,rdi
mov       r8,rsi
mov       r9d,0FFFFFFFF
cmp       [rcx],ecx
call      qword ptr [7FF9F68ADB60]; System.Text.RegularExpressions.RegexReplacement.Replace(System.Text.RegularExpressions.Regex, System.String, Int32, Int32)
M00_L06
 
mov       [rsp+30],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+30]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,40
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
ret
M00_L07
 
call      qword ptr [7FF9F63652C0]
mov       ecx,7D9
mov       rdx,7FF9F62E3C60
call      CORINFO_HELP_STRCNS
mov       rbp,rax
mov       ecx,1446
mov       rdx,7FF9F6175A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbp
call      qword ptr [7FF9F5DE6B08]; System.String.Concat(System.String, System.String)
mov       r14,rax
mov       ecx,1
mov       rdx,7FF9F62E3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,r14
call      qword ptr [7FF9F5DE6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63650B0]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FF9F6076670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L08
 
mov       rdx,rax
call      qword ptr [7FF9F5DE43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M00_L09
 
call      qword ptr [7FF9F6365368]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L10
call      qword ptr [7FF9F63650B0]
mov       rbx,rax
M00_L10
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,1D3A7FA48E8
mov       r8,rbx
call      qword ptr [7FF9F6076670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L11
 
mov       rsi,rbp
xor       r14d,r14d
jmp       near ptr M00_L05
M00_L12
 
xor       eax,eax
jmp       near ptr M00_L06
 
System.Text.Json.JsonSerializerOptions.ConfigureForJsonSerializer()
M01_L00
 
push      rbp
sub       rsp,80
vzeroupper
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
mov       rax,0FFFFFFFFFFFFFFA0
M01_L01
 
vmovdqa   xmmword ptr [rax+rbp],xmm4
vmovdqa   xmmword ptr [rbp+rax+10],xmm4
vmovdqa   xmmword ptr [rbp+rax+20],xmm4
add       rax,30
jne       short M01_L01
mov       [rbp+10],rcx
call      qword ptr [7FF9F6307780]; System.Text.Json.JsonSerializer.get_IsReflectionEnabledByDefault()
test      eax,eax
je        near ptr M01_L05
call      qword ptr [7FF9F636DA40]; System.Text.Json.Serialization.Metadata.DefaultJsonTypeInfoResolver.get_DefaultInstance()
mov       [rbp-18],rax
mov       rdx,[rbp+10]
mov       rdx,[rdx+20]
mov       [rbp-30],rdx
cmp       qword ptr [rbp-30],0
je        short M01_L02
mov       rdx,[rbp-30]
mov       rcx,offset MT_System.Text.Json.Serialization.JsonSerializerContext
call      qword ptr [7FF9F5DE4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       [rbp-28],rax
cmp       qword ptr [rbp-28],0
jne       short M01_L03
jmp       near ptr M01_L09
M01_L02
 
mov       rcx,[rbp+10]
lea       rcx,[rcx+20]
mov       rdx,[rbp-18]
call      CORINFO_HELP_ASSIGN_REF
jmp       near ptr M01_L09
M01_L03
 
call      qword ptr [7FF9F6307180]
test      eax,eax
je        near ptr M01_L09
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rbp-10],xmm0
lea       rdx,[rbp-10]
mov       rcx,offset MD_.InlineArrayElementRef[[<>y__InlineArray2`1[[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]], System.Text.Json],[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]](<>y__InlineArray2`1 ByRef, Int32)
xor       r8d,r8d
call      qword ptr [7FF9F636DC50]
mov       rdx,[rbp-28]
mov       rcx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rdx,[rbp-10]
mov       rcx,offset MD_.InlineArrayElementRef[[<>y__InlineArray2`1[[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]], System.Text.Json],[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]](<>y__InlineArray2`1 ByRef, Int32)
mov       r8d,1
call      qword ptr [7FF9F636DC50]
mov       rdx,[rbp-18]
mov       rcx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rbp-48]
lea       r8,[rbp-10]
mov       rdx,offset MD_.InlineArrayAsReadOnlySpan[[<>y__InlineArray2`1[[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]], System.Text.Json],[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]](<>y__InlineArray2`1 ByRef, Int32)
mov       r9d,2
call      qword ptr [7FF9F636DC80]
mov       rcx,[rbp+10]
lea       rcx,[rcx+60]
mov       [rbp-60],rcx
vmovdqu   xmm0,xmmword ptr [rbp-48]
vmovdqu   xmmword ptr [rbp-58],xmm0
lea       rcx,[rbp-58]
call      qword ptr [7FF9F636DCC8]
mov       rcx,[rbp-60]
mov       rdx,rax
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rbp+10]
mov       rcx,[rcx+8]
mov       [rbp-20],rcx
cmp       qword ptr [rbp-20],0
je        near ptr M01_L09
mov       rcx,[rbp-20]
cmp       [rcx],ecx
call      qword ptr [7FF9F636DAE8]; System.Text.Json.JsonSerializerOptions+CachingContext.get_Options()
cmp       rax,[rbp+10]
je        short M01_L04
mov       rcx,[rbp-20]
cmp       [rcx],ecx
call      qword ptr [7FF9F636DAE8]; System.Text.Json.JsonSerializerOptions+CachingContext.get_Options()
movzx     ecx,byte ptr [rax+9E]
test      ecx,ecx
jne       short M01_L04
mov       rcx,[rbp-20]
cmp       [rcx],ecx
call      qword ptr [7FF9F636DAE8]; System.Text.Json.JsonSerializerOptions+CachingContext.get_Options()
mov       rcx,rax
cmp       [rcx],ecx
call      qword ptr [7FF9F6306A48]
jmp       short M01_L09
M01_L04
 
mov       rcx,[rbp-20]
cmp       [rcx],ecx
call      qword ptr [7FF9F636DB60]
jmp       short M01_L09
M01_L05
 
mov       rdx,[rbp+10]
mov       rdx,[rdx+20]
mov       [rbp-30],rdx
cmp       qword ptr [rbp-30],0
je        short M01_L06
mov       rdx,[rbp-30]
mov       rcx,offset MT_System.Text.Json.Serialization.Metadata.EmptyJsonTypeInfoResolver
call      qword ptr [7FF9F5DE4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
test      rax,rax
je        short M01_L07
M01_L06
 
mov       dword ptr [rbp-34],1
jmp       short M01_L08
M01_L07
 
xor       eax,eax
mov       [rbp-34],eax
M01_L08
 
cmp       dword ptr [rbp-34],0
je        short M01_L09
call      qword ptr [7FF9F630D098]
M01_L09
 
mov       rax,[rbp+10]
mov       byte ptr [rax+9D],1
mov       rax,[rbp+10]
mov       byte ptr [rax+9E],1
add       rsp,80
pop       rbp
ret
 
System.Text.Json.JsonSerializerOptions.get_ObjectTypeInfo()
push      rsi
push      rbx
sub       rsp,38
mov       rbx,rcx
mov       rax,[rbx+18]
test      rax,rax
je        short M02_L01
M02_L00
 
add       rsp,38
pop       rbx
pop       rsi
ret
M02_L01
 
mov       byte ptr [rsp+30],1
mov       byte ptr [rsp+31],1
xor       ecx,ecx
mov       [rsp+20],ecx
mov       [rsp+28],ecx
mov       rcx,rbx
movzx     r9d,word ptr [rsp+30]
mov       rdx,1D3A7F92D10
mov       r8d,1
call      qword ptr [7FF9F63062F8]; System.Text.Json.JsonSerializerOptions.GetTypeInfoInternal(System.Type, Boolean, System.Nullable`1, Boolean, Boolean)
mov       rsi,rax
lea       rcx,[rbx+18]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rax,rsi
jmp       short M02_L00
 
System.Text.Json.JsonSerializer.WriteString[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef, System.Text.Json.Serialization.Metadata.JsonTypeInfo`1)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,88
vzeroupper
lea       rbp,[rsp+0C0]
xor       eax,eax
mov       [rbp-98],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-90],xmm4
vmovdqa   xmmword ptr [rbp-80],xmm4
vmovdqa   xmmword ptr [rbp-70],xmm4
vmovdqa   xmmword ptr [rbp-60],xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
mov       [rbp-40],rax
mov       [rbp-0A0],rsp
mov       rsi,rdx
mov       rbx,r8
mov       rdi,[rbx+0B0]
lea       rdx,[rbp-48]
mov       rcx,rdi
cmp       [rcx],ecx
call      qword ptr [7FF9F6306AC0]; System.Text.Json.JsonSerializerOptions.GetWriterOptions()
mov       edi,[rdi+7C]
mov       rcx,gs:[58]
mov       rcx,[rcx+30]
cmp       dword ptr [rcx+190],3
jl        near ptr M03_L11
mov       rcx,[rcx+198]
mov       rcx,[rcx+18]
test      rcx,rcx
je        near ptr M03_L11
mov       rax,[rcx]
add       rax,10
mov       r14,[rax]
test      r14,r14
je        near ptr M03_L12
M03_L00
 
mov       ecx,[r14+18]
lea       edx,[rcx+1]
mov       [r14+18],edx
test      ecx,ecx
jne       near ptr M03_L15
mov       rcx,[r14+8]
mov       [rbp-90],rcx
mov       r14,[r14+10]
mov       rcx,[rbp-90]
cmp       [rcx],cl
mov       rcx,1931A001F20
mov       rcx,[rcx]
mov       edx,edi
call      qword ptr [7FF9F65E4018]; System.Buffers.SharedArrayPool`1[[System.Byte, System.Private.CoreLib]].Rent(Int32)
mov       rcx,[rbp-90]
lea       rcx,[rcx+10]
mov       rdx,rax
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rbp-90]
xor       edx,edx
mov       [rcx+20],edx
lea       rcx,[r14+8]
mov       rdx,[rbp-90]
call      CORINFO_HELP_ASSIGN_REF
mov       edi,[rbp-3C]
lea       rcx,[r14+68]
mov       rdx,[rbp-48]
call      CORINFO_HELP_ASSIGN_REF
mov       ecx,[rbp-40]
mov       [r14+70],ecx
mov       ecx,[rbp-3C]
mov       [r14+74],ecx
mov       ecx,9
mov       edx,20
test      byte ptr [r14+74],8
cmove     ecx,edx
mov       [r14+3B],cl
mov       ecx,edi
and       ecx,7F0
sar       ecx,4
je        short M03_L01
xor       edx,edx
cmp       ecx,2
cmovne    edx,ecx
jmp       short M03_L02
M03_L01
 
mov       edx,2
M03_L02
 
mov       [r14+2C],edx
test      dil,4
jne       near ptr M03_L13
mov       rdi,1D3A7F91C08
M03_L03
 
mov       ecx,[rdi+8]
mov       [r14+30],ecx
cmp       dword ptr [r14+70],0
je        near ptr M03_L14
M03_L04
 
mov       [rbp-88],r14
mov       rcx,rbx
mov       rdx,r14
mov       r8,rsi
xor       r9d,r9d
call      qword ptr [7FF9F636D1E8]; System.Text.Json.Serialization.Metadata.JsonTypeInfo`1[[System.__Canon, System.Private.CoreLib]].Serialize(System.Text.Json.Utf8JsonWriter, System.__Canon ByRef, System.Object)
mov       rcx,[rbp-90]
mov       rcx,[rcx+10]
mov       rax,[rbp-90]
mov       r15d,[rax+20]
test      rcx,rcx
je        short M03_L08
cmp       [rcx+8],r15d
jb        short M03_L07
M03_L05
 
xor       r13d,r13d
xor       r12d,r12d
test      rcx,rcx
je        short M03_L10
mov       rax,[rcx]
test      dword ptr [rax],80000000
je        short M03_L09
lea       r13,[rcx+10]
mov       r12d,[rcx+8]
M03_L06
 
cmp       r15d,r12d
ja        short M03_L07
mov       r12d,r15d
jmp       short M03_L10
M03_L07
 
call      qword ptr [7FF9F604E9D0]
int       3
M03_L08
 
test      r15d,r15d
jne       short M03_L07
xor       ecx,ecx
xor       r15d,r15d
jmp       short M03_L05
M03_L09
 
lea       rdx,[rbp-58]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+28]
mov       r13,[rbp-58]
mov       r12d,[rbp-50]
jmp       short M03_L06
M03_L10
 
mov       rcx,r13
mov       [rbp-80],rcx
mov       [rbp-78],r12d
lea       rcx,[rbp-80]
call      qword ptr [7FF9F636E718]; System.Text.Json.JsonReaderHelper.TranscodeHelper(System.ReadOnlySpan`1)
mov       [rbp-98],rax
mov       rcx,rsp
call      M03_L16
nop
mov       rax,[rbp-98]
add       rsp,88
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M03_L11
 
mov       ecx,3
call      CORINFO_HELP_GETSHARED_GCTHREADSTATIC_BASE_NOCTOR_OPTIMIZED
mov       r14,[rax]
test      r14,r14
jne       near ptr M03_L00
M03_L12
 
mov       rcx,offset MT_System.Text.Json.Utf8JsonWriterCache+ThreadLocalState
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
call      qword ptr [7FF9F678E028]; System.Text.Json.Utf8JsonWriterCache+ThreadLocalState..ctor()
mov       ecx,3
call      CORINFO_HELP_GETSHARED_GCTHREADSTATIC_BASE_NOCTOR_OPTIMIZED
mov       rcx,rax
mov       rdx,r14
call      CORINFO_HELP_ASSIGN_REF
jmp       near ptr M03_L00
M03_L13
 
mov       rcx,7FF9F6314D40
mov       edx,69
call      CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
mov       rcx,1931A00F9D0
mov       rdi,[rcx]
jmp       near ptr M03_L03
M03_L14
 
lea       rcx,[r14+68]
mov       edx,3E8
call      qword ptr [7FF9F66C7A20]; System.Text.Json.JsonWriterOptions.set_MaxDepth(Int32)
jmp       near ptr M03_L04
M03_L15
 
mov       rcx,offset MT_System.Text.Json.PooledByteBufferWriter
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       edx,edi
call      qword ptr [7FF9F6737DB0]
mov       [rbp-90],r14
mov       rcx,offset MT_System.Text.Json.Utf8JsonWriter
call      CORINFO_HELP_NEWSFAST
mov       r13,rax
mov       rdx,r14
vmovdqu   xmm0,xmmword ptr [rbp-48]
vmovdqu   xmmword ptr [rbp-70],xmm0
mov       rcx,r13
lea       r8,[rbp-70]
call      qword ptr [7FF9F66CC0D8]
mov       r14,r13
jmp       near ptr M03_L04
M03_L16
 
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,28
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+0C0]
mov       r14,[rbp-90]
mov       rcx,gs:[58]
mov       rcx,[rcx+30]
cmp       dword ptr [rcx+190],3
jl        short M03_L17
mov       rcx,[rcx+198]
mov       rcx,[rcx+18]
test      rcx,rcx
jne       short M03_L18
M03_L17
 
mov       ecx,3
call      CORINFO_HELP_GETSHARED_GCTHREADSTATIC_BASE_NOCTOR_OPTIMIZED
jmp       short M03_L19
M03_L18
 
mov       rax,[rcx]
add       rax,10
M03_L19
 
mov       r15,[rax]
xor       ecx,ecx
mov       r12,[rbp-88]
mov       [r12+34],ecx
mov       [r12+20],rcx
mov       [r12+40],rcx
mov       [r12+48],rcx
mov       byte ptr [r12+38],0
mov       byte ptr [r12+3A],0
mov       byte ptr [r12+39],0
mov       [r12+28],ecx
mov       [r12+50],rcx
mov       [r12+58],rcx
mov       [r12+60],rcx
mov       [r12+10],rcx
mov       [r12+18],rcx
mov       [r12+8],rcx
mov       rcx,[rbp-90]
mov       rcx,[rcx+10]
mov       rdx,[rbp-90]
mov       r10d,[rdx+20]
test      rcx,rcx
jne       short M03_L20
test      r10d,r10d
jne       short M03_L21
xor       ecx,ecx
xor       r10d,r10d
jmp       short M03_L23
M03_L20
 
cmp       [rcx+8],r10d
jae       short M03_L22
M03_L21
 
call      qword ptr [7FF9F604E9D0]
int       3
M03_L22
 
add       rcx,10
M03_L23
 
mov       edx,r10d
mov       [rbp-60],rdx
test      rdx,rdx
je        short M03_L25
cmp       rdx,300
ja        short M03_L24
xor       edx,edx
mov       r8d,[rbp-60]
call      CORINFO_HELP_MEMSET
jmp       short M03_L25
M03_L24
 
mov       rdx,[rbp-60]
call      qword ptr [7FF9F5E95BA8]; System.Buffer._ZeroMemory(Byte ByRef, UIntPtr)
M03_L25
 
xor       ecx,ecx
mov       [r14+20],ecx
mov       rdx,[r14+10]
mov       [r14+10],rcx
mov       rcx,1931A001F20
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65E4020]; System.Buffers.SharedArrayPool`1[[System.Byte, System.Private.CoreLib]].Return(Byte[], Boolean)
dec       dword ptr [r15+18]
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Trim()
push      rsi
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,[rbx+8]
test      esi,esi
je        short M04_L03
movzx     ecx,word ptr [rbx+0C]
cmp       ecx,100
jae       short M04_L00
mov       ecx,ecx
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       short M04_L04
jmp       short M04_L01
M04_L00
 
call      qword ptr [7FF9F673E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       short M04_L04
M04_L01
 
dec       esi
mov       ecx,esi
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L02
mov       ecx,ecx
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       short M04_L04
jmp       short M04_L03
M04_L02
 
call      qword ptr [7FF9F673E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       short M04_L04
M04_L03
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rsi
ret
M04_L04
 
mov       rcx,rbx
mov       edx,3
call      qword ptr [7FF9F5DE73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
nop
add       rsp,28
pop       rbx
pop       rsi
ret
 
DotNetTips.Spargine.Core.Serialization.JsonSerialization.Deserialize[[System.__Canon, System.Private.CoreLib]](System.String)
push      rsi
push      rbx
sub       rsp,58
vzeroupper
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
mov       [rsp+50],rcx
mov       rsi,rcx
mov       rbx,rdx
mov       rcx,rbx
test      rcx,rcx
je        short M05_L00
mov       eax,[rcx+8]
xor       edx,edx
test      eax,eax
sete      dl
test      edx,edx
sete      dl
movzx     edx,dl
test      eax,eax
jne       short M05_L01
jmp       short M05_L01
M05_L00
 
xor       edx,edx
M05_L01
 
test      edx,edx
je        near ptr M05_L10
cmp       [rcx],ecx
call      qword ptr [7FF9F5DE7318]; System.String.Trim()
mov       rbx,rax
mov       rcx,[rsi+10]
mov       rcx,[rcx+10]
test      rcx,rcx
je        short M05_L03
M05_L02
 
mov       r8,1931A00DD88
mov       r8,[r8]
mov       rdx,rbx
call      qword ptr [7FF9F67DCF90]; System.Text.Json.JsonSerializer.Deserialize[[System.__Canon, System.Private.CoreLib]](System.String, System.Text.Json.JsonSerializerOptions)
test      rax,rax
je        near ptr M05_L12
add       rsp,58
pop       rbx
pop       rsi
ret
M05_L03
 
mov       rcx,rsi
mov       rdx,7FF9F67EA8C8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
jmp       short M05_L02
M05_L04
 
lea       rcx,[rsp+28]
mov       rdx,1D3A7FA80F8
call      qword ptr [7FF9F5FD58F0]
M05_L05
 
mov       rcx,[rsi+10]
mov       rcx,[rcx]
call      CORINFO_HELP_TYPEHANDLE_TO_RUNTIMETYPE
mov       r8,rax
lea       rcx,[rsp+28]
mov       rdx,offset MD_System.Runtime.CompilerServices.DefaultInterpolatedStringHandler.AppendFormatted[[System.Type, System.Private.CoreLib]](System.Type)
call      qword ptr [7FF9F622E100]; System.Runtime.CompilerServices.DefaultInterpolatedStringHandler.AppendFormatted[[System.__Canon, System.Private.CoreLib]](System.__Canon)
mov       ebx,[rsp+38]
cmp       ebx,[rsp+48]
jbe       short M05_L07
M05_L06
 
call      qword ptr [7FF9F604E9D0]
int       3
M05_L07
 
mov       rcx,[rsp+40]
mov       edx,ebx
lea       rcx,[rcx+rdx*2]
mov       edx,[rsp+48]
sub       edx,ebx
cmp       edx,1
jb        short M05_L08
mov       rdx,1D3A7F90C54
movzx     eax,word ptr [rdx]
mov       [rcx],ax
mov       ecx,[rsp+38]
inc       ecx
mov       [rsp+38],ecx
jmp       short M05_L09
M05_L08
 
lea       rcx,[rsp+28]
mov       rdx,1D3A7F90C48
call      qword ptr [7FF9F5FD58F0]
M05_L09
 
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
lea       rcx,[rsp+28]
call      qword ptr [7FF9F5FD5740]; System.Runtime.CompilerServices.DefaultInterpolatedStringHandler.ToStringAndClear()
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F6076718]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M05_L10
 
call      qword ptr [7FF9F6365368]
mov       rsi,rax
test      rsi,rsi
jne       short M05_L11
call      qword ptr [7FF9F63650B0]
mov       rsi,rax
M05_L11
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,1D3A7FA48E8
mov       r8,rsi
call      qword ptr [7FF9F6076670]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M05_L12
 
lea       rcx,[rsp+28]
mov       edx,2A
mov       r8d,1
call      qword ptr [7FF9F5FD56B0]; System.Runtime.CompilerServices.DefaultInterpolatedStringHandler..ctor(Int32, Int32)
mov       ecx,[rsp+38]
cmp       ecx,[rsp+48]
ja        near ptr M05_L06
mov       rdx,[rsp+40]
mov       eax,ecx
lea       rdx,[rdx+rax*2]
mov       eax,[rsp+48]
sub       eax,ecx
cmp       eax,29
jb        near ptr M05_L04
mov       rcx,1D3A7FA8104
vmovdqu   ymm0,ymmword ptr [rcx]
vmovdqu   ymm1,ymmword ptr [rcx+20]
vmovdqu   ymm2,ymmword ptr [rcx+32]
vmovdqu   ymmword ptr [rdx],ymm0
vmovdqu   ymmword ptr [rdx+20],ymm1
vmovdqu   ymmword ptr [rdx+32],ymm2
mov       ecx,[rsp+38]
add       ecx,29
mov       [rsp+38],ecx
jmp       near ptr M05_L05
 
System.Text.RegularExpressions.Regex.get_RegexReplacementWeakReference()
push      rdi
push      rsi
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rax,[rbx+30]
test      rax,rax
je        short M06_L01
M06_L00
 
add       rsp,20
pop       rbx
pop       rsi
pop       rdi
ret
M06_L01
 
lea       rsi,[rbx+30]
mov       rcx,offset MT_System.WeakReference`1[[System.Text.RegularExpressions.RegexReplacement, System.Text.RegularExpressions]]
call      CORINFO_HELP_NEWFAST
mov       rdi,rax
mov       rcx,rdi
xor       edx,edx
xor       r8d,r8d
call      qword ptr [7FF9F5E9D098]; System.WeakReference`1[[System.__Canon, System.Private.CoreLib]].Create(System.__Canon, Boolean)
mov       rcx,rsi
mov       rdx,rdi
xor       r8d,r8d
call      System.Threading.Interlocked.CompareExchange(System.Object ByRef, System.Object, System.Object)
test      rax,rax
jne       short M06_L00
mov       rax,[rbx+30]
jmp       short M06_L00
 
System.Text.RegularExpressions.RegexReplacement.GetOrCreate(System.WeakReference`1, System.String, System.Collections.Hashtable, Int32, System.Collections.Hashtable, System.Text.RegularExpressions.RegexOptions)
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,30
mov       rbx,rcx
mov       rsi,rdx
mov       rdi,r8
mov       ebp,r9d
mov       rax,[rbx+8]
and       rax,0FFFFFFFFFFFFFFFE
je        short M07_L03
test      al,2
jne       short M07_L04
mov       r14,[rax]
M07_L00
 
test      r14,r14
je        short M07_L02
mov       r15,[r14+18]
cmp       [r15],r15b
cmp       r15,rsi
jne       short M07_L05
M07_L01
 
mov       rax,r14
add       rsp,30
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
ret
M07_L02
 
mov       r13,[rsp+90]
mov       [rsp+20],r13
mov       rcx,rsi
mov       edx,[rsp+98]
mov       r8,rdi
mov       r9d,ebp
call      qword ptr [7FF9F68AE0A0]; System.Text.RegularExpressions.RegexParser.ParseReplacement(System.String, System.Text.RegularExpressions.RegexOptions, System.Collections.Hashtable, Int32, System.Collections.Hashtable)
mov       r14,rax
mov       rcx,rbx
mov       rdx,r14
call      qword ptr [7FF9F5E9D0B0]; System.WeakReference`1[[System.__Canon, System.Private.CoreLib]].SetTarget(System.__Canon)
jmp       short M07_L01
M07_L03
 
xor       r14d,r14d
jmp       short M07_L00
M07_L04
 
and       rax,0FFFFFFFFFFFFFFFC
mov       rcx,[rax]
cmp       [rcx],ecx
call      qword ptr [7FF9F6A74228]
mov       r14,rax
jmp       short M07_L00
M07_L05
 
test      rsi,rsi
je        short M07_L02
mov       r8d,[r15+8]
cmp       r8d,[rsi+8]
jne       short M07_L02
lea       rcx,[r15+0C]
mov       r8d,[r15+8]
add       r8d,r8d
lea       rdx,[rsi+0C]
call      qword ptr [7FF9F5E95068]; System.SpanHelpers.SequenceEqual(Byte ByRef, Byte ByRef, UIntPtr)
test      eax,eax
jne       near ptr M07_L01
jmp       short M07_L02
 
System.Text.RegularExpressions.RegexReplacement.Replace(System.Text.RegularExpressions.Regex, System.String, Int32, Int32)
sub       rsp,28
mov       eax,[rsp+50]
cmp       r9d,0FFFFFFFF
jl        short M08_L01
cmp       [r8+8],eax
jb        short M08_L02
test      r9d,r9d
je        short M08_L03
test      byte ptr [rdx+40],40
je        short M08_L04
M08_L00
 
mov       [rsp+50],eax
add       rsp,28
jmp       qword ptr [7FF9F68ADB90]; System.Text.RegularExpressions.RegexReplacement.ReplaceNonSimpleText(System.Text.RegularExpressions.Regex, System.String, Int32, Int32)
M08_L01
 
mov       ecx,3
mov       edx,1
call      qword ptr [7FF9F6A74150]
int       3
M08_L02
 
mov       ecx,0E
xor       edx,edx
call      qword ptr [7FF9F6A74150]
int       3
M08_L03
 
mov       rax,r8
add       rsp,28
ret
M08_L04
 
cmp       byte ptr [rcx+20],0
jne       short M08_L00
mov       r10,[rcx+10]
cmp       dword ptr [r10+8],0
jne       short M08_L05
mov       rcx,rdx
mov       r10,1D3A7F90008
jmp       short M08_L06
M08_L05
 
mov       r10,[rcx+8]
cmp       dword ptr [r10+8],0
jbe       short M08_L07
mov       r10,[r10+10]
mov       rcx,rdx
M08_L06
 
mov       [rsp+50],eax
mov       rdx,r8
mov       r8,r10
add       rsp,28
jmp       qword ptr [7FF9F68ADB78]
M08_L07
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M09_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M09_L02
test      rbx,rbx
je        short M09_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M09_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M09_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FF9F5E95B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FF9F5E95B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M09_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M09_L01
 
call      qword ptr [7FF9F604EF40]
int       3
M09_L02
 
test      rbx,rbx
je        short M09_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M09_L04
M09_L03
 
mov       rax,1D3A7F90008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M09_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 
System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
push      rdi
push      rsi
push      rbx
sub       rsp,20
mov       rsi,rcx
mov       rbx,rdx
mov       rdi,[rbx]
M10_L00
 
mov       rdi,[rdi+10]
cmp       rdi,rsi
jne       short M10_L02
M10_L01
 
mov       rcx,7FF9F691BF5C
call      CORINFO_HELP_COUNTPROFILE32
mov       rax,rbx
add       rsp,20
pop       rbx
pop       rsi
pop       rdi
ret
M10_L02
 
test      rdi,rdi
je        near ptr M10_L08
mov       rdi,[rdi+10]
cmp       rdi,rsi
jne       short M10_L03
mov       rcx,7FF9F691BF58
call      CORINFO_HELP_COUNTPROFILE32
jmp       short M10_L01
M10_L03
 
test      rdi,rdi
je        short M10_L04
mov       rdi,[rdi+10]
cmp       rdi,rsi
jne       short M10_L05
mov       rcx,7FF9F691BF50
call      CORINFO_HELP_COUNTPROFILE32
jmp       short M10_L01
M10_L04
 
mov       rcx,7FF9F691BF54
call      CORINFO_HELP_COUNTPROFILE32
jmp       short M10_L08
M10_L05
 
test      rdi,rdi
je        short M10_L07
mov       rdi,[rdi+10]
cmp       rdi,rsi
je        short M10_L06
test      rdi,rdi
je        short M10_L09
mov       rcx,7FF9F691BF44
call      CORINFO_HELP_COUNTPROFILE32
jmp       near ptr M10_L00
M10_L06
 
mov       rcx,7FF9F691BF48
call      CORINFO_HELP_COUNTPROFILE32
jmp       near ptr M10_L01
M10_L07
 
mov       rcx,7FF9F691BF4C
call      CORINFO_HELP_COUNTPROFILE32
M10_L08
 
mov       rcx,7FF9F691BF60
call      CORINFO_HELP_COUNTPROFILE32
mov       rcx,rsi
mov       rdx,rbx
add       rsp,20
pop       rbx
pop       rsi
pop       rdi
jmp       qword ptr [7FF9F5DE43A8]
M10_L09
 
mov       rcx,7FF9F691BF40
call      CORINFO_HELP_COUNTPROFILE32
jmp       short M10_L08
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.RemoveCRLF01()
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,40
xor       eax,eax
mov       [rsp+38],rax
mov       [rsp+30],rax
mov       rbx,rcx
mov       rcx,[rbx+298]
test      rcx,rcx
je        near ptr M00_L07
mov       [rsp+38],rcx
mov       rcx,1A6C680EF18
mov       rsi,[rcx]
cmp       byte ptr [rsi+9E],0
jne       short M00_L00
mov       rcx,rsi
call      qword ptr [7FF9F62E6A48]; System.Text.Json.JsonSerializerOptions.ConfigureForJsonSerializer()
M00_L00
 
mov       rcx,rsi
call      qword ptr [7FF9F62E6358]; System.Text.Json.JsonSerializerOptions.get_ObjectTypeInfo()
mov       r8,rax
test      r8,r8
jne       short M00_L02
M00_L01
 
lea       rdx,[rsp+38]
mov       rcx,offset MD_System.Text.Json.JsonSerializer.WriteString[[System.Object, System.Private.CoreLib]](System.Object ByRef, System.Text.Json.Serialization.Metadata.JsonTypeInfo`1)
call      qword ptr [7FF9F676D200]; System.Text.Json.JsonSerializer.WriteString[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef, System.Text.Json.Serialization.Metadata.JsonTypeInfo`1)
test      rax,rax
je        short M00_L03
mov       ecx,[rax+8]
xor       edx,edx
test      ecx,ecx
sete      dl
test      edx,edx
sete      dl
movzx     edx,dl
test      ecx,ecx
jne       short M00_L04
jmp       short M00_L04
M00_L02
 
mov       rcx,offset MT_System.Text.Json.Serialization.Metadata.JsonTypeInfo`1[[System.Object, System.Private.CoreLib]]
cmp       [r8],rcx
jne       near ptr M00_L08
jmp       short M00_L01
M00_L03
 
xor       edx,edx
M00_L04
 
test      edx,edx
je        near ptr M00_L09
mov       rcx,rax
cmp       [rcx],ecx
call      qword ptr [7FF9F5DC7318]; System.String.Trim()
mov       rdx,rax
mov       rcx,offset MD_DotNetTips.Spargine.Core.Serialization.JsonSerialization.Deserialize[[System.String, System.Private.CoreLib]](System.String)
call      qword ptr [7FF9F67BCF30]; DotNetTips.Spargine.Core.Serialization.JsonSerialization.Deserialize[[System.__Canon, System.Private.CoreLib]](System.String)
mov       rsi,rax
test      rsi,rsi
je        near ptr M00_L12
mov       rcx,1A6C680DC68
mov       rdi,[rcx]
mov       rbp,rsi
test      byte ptr [rdi+40],40
je        near ptr M00_L11
mov       r14d,[rsi+8]
M00_L05
 
mov       rcx,rdi
call      qword ptr [7FF9F620D830]; System.Text.RegularExpressions.Regex.get_RegexReplacementWeakReference()
mov       rcx,rax
mov       r8,[rdi+20]
mov       [rsp+20],r8
mov       r8d,[rdi+40]
mov       [rsp+28],r8d
mov       r8,[rdi+18]
mov       r9d,[rdi+44]
mov       rdx,1E758890008
call      qword ptr [7FF9F688DB00]; System.Text.RegularExpressions.RegexReplacement.GetOrCreate(System.WeakReference`1, System.String, System.Collections.Hashtable, Int32, System.Collections.Hashtable, System.Text.RegularExpressions.RegexOptions)
mov       rcx,rax
mov       [rsp+20],r14d
mov       rdx,rdi
mov       r8,rsi
mov       r9d,0FFFFFFFF
cmp       [rcx],ecx
call      qword ptr [7FF9F688DB60]; System.Text.RegularExpressions.RegexReplacement.Replace(System.Text.RegularExpressions.Regex, System.String, Int32, Int32)
M00_L06
 
mov       [rsp+30],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+30]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,40
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
ret
M00_L07
 
call      qword ptr [7FF9F63452C0]
mov       ecx,7D9
mov       rdx,7FF9F62C3C60
call      CORINFO_HELP_STRCNS
mov       rbp,rax
mov       ecx,1446
mov       rdx,7FF9F6155A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbp
call      qword ptr [7FF9F5DC6B08]; System.String.Concat(System.String, System.String)
mov       r14,rax
mov       ecx,1
mov       rdx,7FF9F62C3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,r14
call      qword ptr [7FF9F5DC6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63450B0]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FF9F6056670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L08
 
mov       rdx,rax
call      qword ptr [7FF9F5DC43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M00_L09
 
call      qword ptr [7FF9F6345368]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L10
call      qword ptr [7FF9F63450B0]
mov       rbx,rax
M00_L10
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,1E7588A48E8
mov       r8,rbx
call      qword ptr [7FF9F6056670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L11
 
mov       rsi,rbp
xor       r14d,r14d
jmp       near ptr M00_L05
M00_L12
 
xor       eax,eax
jmp       near ptr M00_L06
 
System.Text.Json.JsonSerializerOptions.ConfigureForJsonSerializer()
M01_L00
 
push      rbp
sub       rsp,80
vzeroupper
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
mov       rax,0FFFFFFFFFFFFFFA0
M01_L01
 
vmovdqa   xmmword ptr [rax+rbp],xmm4
vmovdqa   xmmword ptr [rbp+rax+10],xmm4
vmovdqa   xmmword ptr [rbp+rax+20],xmm4
add       rax,30
jne       short M01_L01
mov       [rbp+10],rcx
call      qword ptr [7FF9F62E7780]; System.Text.Json.JsonSerializer.get_IsReflectionEnabledByDefault()
test      eax,eax
je        near ptr M01_L05
call      qword ptr [7FF9F634DA40]; System.Text.Json.Serialization.Metadata.DefaultJsonTypeInfoResolver.get_DefaultInstance()
mov       [rbp-18],rax
mov       rdx,[rbp+10]
mov       rdx,[rdx+20]
mov       [rbp-30],rdx
cmp       qword ptr [rbp-30],0
je        short M01_L02
mov       rdx,[rbp-30]
mov       rcx,offset MT_System.Text.Json.Serialization.JsonSerializerContext
call      qword ptr [7FF9F5DC4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       [rbp-28],rax
cmp       qword ptr [rbp-28],0
jne       short M01_L03
jmp       near ptr M01_L09
M01_L02
 
mov       rcx,[rbp+10]
lea       rcx,[rcx+20]
mov       rdx,[rbp-18]
call      CORINFO_HELP_ASSIGN_REF
jmp       near ptr M01_L09
M01_L03
 
call      qword ptr [7FF9F62E7180]
test      eax,eax
je        near ptr M01_L09
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rbp-10],xmm0
lea       rdx,[rbp-10]
mov       rcx,offset MD_.InlineArrayElementRef[[<>y__InlineArray2`1[[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]], System.Text.Json],[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]](<>y__InlineArray2`1 ByRef, Int32)
xor       r8d,r8d
call      qword ptr [7FF9F634DC50]
mov       rdx,[rbp-28]
mov       rcx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rdx,[rbp-10]
mov       rcx,offset MD_.InlineArrayElementRef[[<>y__InlineArray2`1[[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]], System.Text.Json],[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]](<>y__InlineArray2`1 ByRef, Int32)
mov       r8d,1
call      qword ptr [7FF9F634DC50]
mov       rdx,[rbp-18]
mov       rcx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rbp-48]
lea       r8,[rbp-10]
mov       rdx,offset MD_.InlineArrayAsReadOnlySpan[[<>y__InlineArray2`1[[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]], System.Text.Json],[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]](<>y__InlineArray2`1 ByRef, Int32)
mov       r9d,2
call      qword ptr [7FF9F634DC80]
mov       rcx,[rbp+10]
lea       rcx,[rcx+60]
mov       [rbp-60],rcx
vmovdqu   xmm0,xmmword ptr [rbp-48]
vmovdqu   xmmword ptr [rbp-58],xmm0
lea       rcx,[rbp-58]
call      qword ptr [7FF9F634DCC8]
mov       rcx,[rbp-60]
mov       rdx,rax
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rbp+10]
mov       rcx,[rcx+8]
mov       [rbp-20],rcx
cmp       qword ptr [rbp-20],0
je        near ptr M01_L09
mov       rcx,[rbp-20]
cmp       [rcx],ecx
call      qword ptr [7FF9F634DAE8]; System.Text.Json.JsonSerializerOptions+CachingContext.get_Options()
cmp       rax,[rbp+10]
je        short M01_L04
mov       rcx,[rbp-20]
cmp       [rcx],ecx
call      qword ptr [7FF9F634DAE8]; System.Text.Json.JsonSerializerOptions+CachingContext.get_Options()
movzx     ecx,byte ptr [rax+9E]
test      ecx,ecx
jne       short M01_L04
mov       rcx,[rbp-20]
cmp       [rcx],ecx
call      qword ptr [7FF9F634DAE8]; System.Text.Json.JsonSerializerOptions+CachingContext.get_Options()
mov       rcx,rax
cmp       [rcx],ecx
call      qword ptr [7FF9F62E6A48]
jmp       short M01_L09
M01_L04
 
mov       rcx,[rbp-20]
cmp       [rcx],ecx
call      qword ptr [7FF9F634DB60]
jmp       short M01_L09
M01_L05
 
mov       rdx,[rbp+10]
mov       rdx,[rdx+20]
mov       [rbp-30],rdx
cmp       qword ptr [rbp-30],0
je        short M01_L06
mov       rdx,[rbp-30]
mov       rcx,offset MT_System.Text.Json.Serialization.Metadata.EmptyJsonTypeInfoResolver
call      qword ptr [7FF9F5DC4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
test      rax,rax
je        short M01_L07
M01_L06
 
mov       dword ptr [rbp-34],1
jmp       short M01_L08
M01_L07
 
xor       eax,eax
mov       [rbp-34],eax
M01_L08
 
cmp       dword ptr [rbp-34],0
je        short M01_L09
call      qword ptr [7FF9F62ED098]
M01_L09
 
mov       rax,[rbp+10]
mov       byte ptr [rax+9D],1
mov       rax,[rbp+10]
mov       byte ptr [rax+9E],1
add       rsp,80
pop       rbp
ret
 
System.Text.Json.JsonSerializerOptions.get_ObjectTypeInfo()
push      rsi
push      rbx
sub       rsp,38
mov       rbx,rcx
mov       rax,[rbx+18]
test      rax,rax
je        short M02_L01
M02_L00
 
add       rsp,38
pop       rbx
pop       rsi
ret
M02_L01
 
mov       byte ptr [rsp+30],1
mov       byte ptr [rsp+31],1
xor       ecx,ecx
mov       [rsp+20],ecx
mov       [rsp+28],ecx
mov       rcx,rbx
movzx     r9d,word ptr [rsp+30]
mov       rdx,1E758892D10
mov       r8d,1
call      qword ptr [7FF9F62E62F8]; System.Text.Json.JsonSerializerOptions.GetTypeInfoInternal(System.Type, Boolean, System.Nullable`1, Boolean, Boolean)
mov       rsi,rax
lea       rcx,[rbx+18]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rax,rsi
jmp       short M02_L00
 
System.Text.Json.JsonSerializer.WriteString[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef, System.Text.Json.Serialization.Metadata.JsonTypeInfo`1)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,88
vzeroupper
lea       rbp,[rsp+0C0]
xor       eax,eax
mov       [rbp-98],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-90],xmm4
vmovdqa   xmmword ptr [rbp-80],xmm4
vmovdqa   xmmword ptr [rbp-70],xmm4
vmovdqa   xmmword ptr [rbp-60],xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
mov       [rbp-40],rax
mov       [rbp-0A0],rsp
mov       rsi,rdx
mov       rbx,r8
mov       rdi,[rbx+0B0]
lea       rdx,[rbp-48]
mov       rcx,rdi
cmp       [rcx],ecx
call      qword ptr [7FF9F62E6AC0]; System.Text.Json.JsonSerializerOptions.GetWriterOptions()
mov       edi,[rdi+7C]
mov       rcx,gs:[58]
mov       rcx,[rcx+30]
cmp       dword ptr [rcx+190],3
jl        near ptr M03_L11
mov       rcx,[rcx+198]
mov       rcx,[rcx+18]
test      rcx,rcx
je        near ptr M03_L11
mov       rax,[rcx]
add       rax,10
mov       r14,[rax]
test      r14,r14
je        near ptr M03_L12
M03_L00
 
mov       ecx,[r14+18]
lea       edx,[rcx+1]
mov       [r14+18],edx
test      ecx,ecx
jne       near ptr M03_L15
mov       rcx,[r14+8]
mov       [rbp-90],rcx
mov       r14,[r14+10]
mov       rcx,[rbp-90]
cmp       [rcx],cl
mov       rcx,1A6C6801F20
mov       rcx,[rcx]
mov       edx,edi
call      qword ptr [7FF9F65C4018]; System.Buffers.SharedArrayPool`1[[System.Byte, System.Private.CoreLib]].Rent(Int32)
mov       rcx,[rbp-90]
lea       rcx,[rcx+10]
mov       rdx,rax
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rbp-90]
xor       edx,edx
mov       [rcx+20],edx
lea       rcx,[r14+8]
mov       rdx,[rbp-90]
call      CORINFO_HELP_ASSIGN_REF
mov       edi,[rbp-3C]
lea       rcx,[r14+68]
mov       rdx,[rbp-48]
call      CORINFO_HELP_ASSIGN_REF
mov       ecx,[rbp-40]
mov       [r14+70],ecx
mov       ecx,[rbp-3C]
mov       [r14+74],ecx
mov       ecx,9
mov       edx,20
test      byte ptr [r14+74],8
cmove     ecx,edx
mov       [r14+3B],cl
mov       ecx,edi
and       ecx,7F0
sar       ecx,4
je        short M03_L01
xor       edx,edx
cmp       ecx,2
cmovne    edx,ecx
jmp       short M03_L02
M03_L01
 
mov       edx,2
M03_L02
 
mov       [r14+2C],edx
test      dil,4
jne       near ptr M03_L13
mov       rdi,1E758891C08
M03_L03
 
mov       ecx,[rdi+8]
mov       [r14+30],ecx
cmp       dword ptr [r14+70],0
je        near ptr M03_L14
M03_L04
 
mov       [rbp-88],r14
mov       rcx,rbx
mov       rdx,r14
mov       r8,rsi
xor       r9d,r9d
call      qword ptr [7FF9F634D1E8]; System.Text.Json.Serialization.Metadata.JsonTypeInfo`1[[System.__Canon, System.Private.CoreLib]].Serialize(System.Text.Json.Utf8JsonWriter, System.__Canon ByRef, System.Object)
mov       rcx,[rbp-90]
mov       rcx,[rcx+10]
mov       rax,[rbp-90]
mov       r15d,[rax+20]
test      rcx,rcx
je        short M03_L08
cmp       [rcx+8],r15d
jb        short M03_L07
M03_L05
 
xor       r13d,r13d
xor       r12d,r12d
test      rcx,rcx
je        short M03_L10
mov       rax,[rcx]
test      dword ptr [rax],80000000
je        short M03_L09
lea       r13,[rcx+10]
mov       r12d,[rcx+8]
M03_L06
 
cmp       r15d,r12d
ja        short M03_L07
mov       r12d,r15d
jmp       short M03_L10
M03_L07
 
call      qword ptr [7FF9F602E9D0]
int       3
M03_L08
 
test      r15d,r15d
jne       short M03_L07
xor       ecx,ecx
xor       r15d,r15d
jmp       short M03_L05
M03_L09
 
lea       rdx,[rbp-58]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+28]
mov       r13,[rbp-58]
mov       r12d,[rbp-50]
jmp       short M03_L06
M03_L10
 
mov       rcx,r13
mov       [rbp-80],rcx
mov       [rbp-78],r12d
lea       rcx,[rbp-80]
call      qword ptr [7FF9F634E718]; System.Text.Json.JsonReaderHelper.TranscodeHelper(System.ReadOnlySpan`1)
mov       [rbp-98],rax
mov       rcx,rsp
call      M03_L16
nop
mov       rax,[rbp-98]
add       rsp,88
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M03_L11
 
mov       ecx,3
call      CORINFO_HELP_GETSHARED_GCTHREADSTATIC_BASE_NOCTOR_OPTIMIZED
mov       r14,[rax]
test      r14,r14
jne       near ptr M03_L00
M03_L12
 
mov       rcx,offset MT_System.Text.Json.Utf8JsonWriterCache+ThreadLocalState
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
call      qword ptr [7FF9F676E028]; System.Text.Json.Utf8JsonWriterCache+ThreadLocalState..ctor()
mov       ecx,3
call      CORINFO_HELP_GETSHARED_GCTHREADSTATIC_BASE_NOCTOR_OPTIMIZED
mov       rcx,rax
mov       rdx,r14
call      CORINFO_HELP_ASSIGN_REF
jmp       near ptr M03_L00
M03_L13
 
mov       rcx,7FF9F62F4D40
mov       edx,69
call      CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
mov       rcx,1A6C680F9D0
mov       rdi,[rcx]
jmp       near ptr M03_L03
M03_L14
 
lea       rcx,[r14+68]
mov       edx,3E8
call      qword ptr [7FF9F66A7A20]; System.Text.Json.JsonWriterOptions.set_MaxDepth(Int32)
jmp       near ptr M03_L04
M03_L15
 
mov       rcx,offset MT_System.Text.Json.PooledByteBufferWriter
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       edx,edi
call      qword ptr [7FF9F6717DB0]
mov       [rbp-90],r14
mov       rcx,offset MT_System.Text.Json.Utf8JsonWriter
call      CORINFO_HELP_NEWSFAST
mov       r13,rax
mov       rdx,r14
vmovdqu   xmm0,xmmword ptr [rbp-48]
vmovdqu   xmmword ptr [rbp-70],xmm0
mov       rcx,r13
lea       r8,[rbp-70]
call      qword ptr [7FF9F66AC0D8]
mov       r14,r13
jmp       near ptr M03_L04
M03_L16
 
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,28
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+0C0]
mov       r14,[rbp-90]
mov       rcx,gs:[58]
mov       rcx,[rcx+30]
cmp       dword ptr [rcx+190],3
jl        short M03_L17
mov       rcx,[rcx+198]
mov       rcx,[rcx+18]
test      rcx,rcx
jne       short M03_L18
M03_L17
 
mov       ecx,3
call      CORINFO_HELP_GETSHARED_GCTHREADSTATIC_BASE_NOCTOR_OPTIMIZED
jmp       short M03_L19
M03_L18
 
mov       rax,[rcx]
add       rax,10
M03_L19
 
mov       r15,[rax]
xor       ecx,ecx
mov       r12,[rbp-88]
mov       [r12+34],ecx
mov       [r12+20],rcx
mov       [r12+40],rcx
mov       [r12+48],rcx
mov       byte ptr [r12+38],0
mov       byte ptr [r12+3A],0
mov       byte ptr [r12+39],0
mov       [r12+28],ecx
mov       [r12+50],rcx
mov       [r12+58],rcx
mov       [r12+60],rcx
mov       [r12+10],rcx
mov       [r12+18],rcx
mov       [r12+8],rcx
mov       rcx,[rbp-90]
mov       rcx,[rcx+10]
mov       rdx,[rbp-90]
mov       r8d,[rdx+20]
test      rcx,rcx
jne       short M03_L20
test      r8d,r8d
jne       short M03_L21
xor       ecx,ecx
xor       r8d,r8d
jmp       short M03_L23
M03_L20
 
cmp       [rcx+8],r8d
jae       short M03_L22
M03_L21
 
call      qword ptr [7FF9F602E9D0]
int       3
M03_L22
 
add       rcx,10
M03_L23
 
mov       edx,r8d
mov       [rbp-60],rdx
test      rdx,rdx
je        short M03_L25
cmp       rdx,300
ja        short M03_L24
xor       edx,edx
mov       r8d,[rbp-60]
call      CORINFO_HELP_MEMSET
jmp       short M03_L25
M03_L24
 
call      qword ptr [7FF9F5E75BA8]; System.Buffer._ZeroMemory(Byte ByRef, UIntPtr)
M03_L25
 
xor       ecx,ecx
mov       [r14+20],ecx
mov       rdx,[r14+10]
mov       [r14+10],rcx
mov       rcx,1A6C6801F20
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65C4020]; System.Buffers.SharedArrayPool`1[[System.Byte, System.Private.CoreLib]].Return(Byte[], Boolean)
dec       dword ptr [r15+18]
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Trim()
push      rsi
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,[rbx+8]
test      esi,esi
je        short M04_L03
movzx     ecx,word ptr [rbx+0C]
cmp       ecx,100
jae       short M04_L00
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       short M04_L04
jmp       short M04_L01
M04_L00
 
call      qword ptr [7FF9F671E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       short M04_L04
M04_L01
 
dec       esi
mov       ecx,esi
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L02
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       short M04_L04
jmp       short M04_L03
M04_L02
 
call      qword ptr [7FF9F671E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       short M04_L04
M04_L03
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rsi
ret
M04_L04
 
mov       rcx,rbx
mov       edx,3
call      qword ptr [7FF9F5DC73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
nop
add       rsp,28
pop       rbx
pop       rsi
ret
 
DotNetTips.Spargine.Core.Serialization.JsonSerialization.Deserialize[[System.__Canon, System.Private.CoreLib]](System.String)
push      rsi
push      rbx
sub       rsp,58
vzeroupper
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
mov       [rsp+50],rcx
mov       rsi,rcx
mov       rbx,rdx
mov       rcx,rbx
test      rcx,rcx
je        short M05_L00
mov       eax,[rcx+8]
xor       edx,edx
test      eax,eax
sete      dl
test      edx,edx
sete      dl
movzx     edx,dl
test      eax,eax
jne       short M05_L01
jmp       short M05_L01
M05_L00
 
xor       edx,edx
M05_L01
 
test      edx,edx
je        near ptr M05_L10
cmp       [rcx],ecx
call      qword ptr [7FF9F5DC7318]; System.String.Trim()
mov       rbx,rax
mov       rcx,[rsi+10]
mov       rcx,[rcx+10]
test      rcx,rcx
je        short M05_L03
M05_L02
 
mov       r8,1A6C680DD88
mov       r8,[r8]
mov       rdx,rbx
call      qword ptr [7FF9F67BCF90]; System.Text.Json.JsonSerializer.Deserialize[[System.__Canon, System.Private.CoreLib]](System.String, System.Text.Json.JsonSerializerOptions)
test      rax,rax
je        near ptr M05_L12
add       rsp,58
pop       rbx
pop       rsi
ret
M05_L03
 
mov       rcx,rsi
mov       rdx,7FF9F67CA8C8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
jmp       short M05_L02
M05_L04
 
lea       rcx,[rsp+28]
mov       rdx,1E7588A80F8
call      qword ptr [7FF9F5FB58F0]
M05_L05
 
mov       rcx,[rsi+10]
mov       rcx,[rcx]
call      CORINFO_HELP_TYPEHANDLE_TO_RUNTIMETYPE
mov       r8,rax
lea       rcx,[rsp+28]
mov       rdx,offset MD_System.Runtime.CompilerServices.DefaultInterpolatedStringHandler.AppendFormatted[[System.Type, System.Private.CoreLib]](System.Type)
call      qword ptr [7FF9F620E100]; System.Runtime.CompilerServices.DefaultInterpolatedStringHandler.AppendFormatted[[System.__Canon, System.Private.CoreLib]](System.__Canon)
mov       ebx,[rsp+38]
cmp       ebx,[rsp+48]
jbe       short M05_L07
M05_L06
 
call      qword ptr [7FF9F602E9D0]
int       3
M05_L07
 
mov       rcx,[rsp+40]
mov       edx,ebx
lea       rcx,[rcx+rdx*2]
mov       edx,[rsp+48]
sub       edx,ebx
cmp       edx,1
jb        short M05_L08
mov       rdx,1E758890C54
movzx     eax,word ptr [rdx]
mov       [rcx],ax
mov       ecx,[rsp+38]
inc       ecx
mov       [rsp+38],ecx
jmp       short M05_L09
M05_L08
 
lea       rcx,[rsp+28]
mov       rdx,1E758890C48
call      qword ptr [7FF9F5FB58F0]
M05_L09
 
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
lea       rcx,[rsp+28]
call      qword ptr [7FF9F5FB5740]; System.Runtime.CompilerServices.DefaultInterpolatedStringHandler.ToStringAndClear()
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F6056718]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M05_L10
 
call      qword ptr [7FF9F6345368]
mov       rsi,rax
test      rsi,rsi
jne       short M05_L11
call      qword ptr [7FF9F63450B0]
mov       rsi,rax
M05_L11
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,1E7588A48E8
mov       r8,rsi
call      qword ptr [7FF9F6056670]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M05_L12
 
lea       rcx,[rsp+28]
mov       edx,2A
mov       r8d,1
call      qword ptr [7FF9F5FB56B0]; System.Runtime.CompilerServices.DefaultInterpolatedStringHandler..ctor(Int32, Int32)
mov       ecx,[rsp+38]
cmp       ecx,[rsp+48]
ja        near ptr M05_L06
mov       rdx,[rsp+40]
mov       eax,ecx
lea       rdx,[rdx+rax*2]
mov       eax,[rsp+48]
sub       eax,ecx
cmp       eax,29
jb        near ptr M05_L04
mov       rcx,1E7588A8104
vmovdqu   ymm0,ymmword ptr [rcx]
vmovdqu   ymm1,ymmword ptr [rcx+20]
vmovdqu   ymm2,ymmword ptr [rcx+32]
vmovdqu   ymmword ptr [rdx],ymm0
vmovdqu   ymmword ptr [rdx+20],ymm1
vmovdqu   ymmword ptr [rdx+32],ymm2
mov       ecx,[rsp+38]
add       ecx,29
mov       [rsp+38],ecx
jmp       near ptr M05_L05
 
System.Text.RegularExpressions.Regex.get_RegexReplacementWeakReference()
push      rdi
push      rsi
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rax,[rbx+30]
test      rax,rax
je        short M06_L01
M06_L00
 
add       rsp,20
pop       rbx
pop       rsi
pop       rdi
ret
M06_L01
 
lea       rsi,[rbx+30]
mov       rcx,offset MT_System.WeakReference`1[[System.Text.RegularExpressions.RegexReplacement, System.Text.RegularExpressions]]
call      CORINFO_HELP_NEWFAST
mov       rdi,rax
mov       rcx,rdi
xor       edx,edx
xor       r8d,r8d
call      qword ptr [7FF9F5E7D098]; System.WeakReference`1[[System.__Canon, System.Private.CoreLib]].Create(System.__Canon, Boolean)
mov       rcx,rsi
mov       rdx,rdi
xor       r8d,r8d
call      System.Threading.Interlocked.CompareExchange(System.Object ByRef, System.Object, System.Object)
test      rax,rax
jne       short M06_L00
mov       rax,[rbx+30]
jmp       short M06_L00
 
System.Text.RegularExpressions.RegexReplacement.GetOrCreate(System.WeakReference`1, System.String, System.Collections.Hashtable, Int32, System.Collections.Hashtable, System.Text.RegularExpressions.RegexOptions)
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,30
mov       rbx,rcx
mov       rsi,rdx
mov       rdi,r8
mov       ebp,r9d
mov       rax,[rbx+8]
and       rax,0FFFFFFFFFFFFFFFE
je        short M07_L03
test      al,2
jne       short M07_L04
mov       r14,[rax]
M07_L00
 
test      r14,r14
je        short M07_L02
mov       r15,[r14+18]
cmp       [r15],r15b
cmp       r15,rsi
jne       short M07_L05
M07_L01
 
mov       rax,r14
add       rsp,30
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
ret
M07_L02
 
mov       r13,[rsp+90]
mov       [rsp+20],r13
mov       rcx,rsi
mov       edx,[rsp+98]
mov       r8,rdi
mov       r9d,ebp
call      qword ptr [7FF9F688E0A0]; System.Text.RegularExpressions.RegexParser.ParseReplacement(System.String, System.Text.RegularExpressions.RegexOptions, System.Collections.Hashtable, Int32, System.Collections.Hashtable)
mov       r14,rax
mov       rcx,rbx
mov       rdx,r14
call      qword ptr [7FF9F5E7D0B0]; System.WeakReference`1[[System.__Canon, System.Private.CoreLib]].SetTarget(System.__Canon)
jmp       short M07_L01
M07_L03
 
xor       r14d,r14d
jmp       short M07_L00
M07_L04
 
and       rax,0FFFFFFFFFFFFFFFC
mov       rcx,[rax]
cmp       [rcx],ecx
call      qword ptr [7FF9F6A55338]
mov       r14,rax
jmp       short M07_L00
M07_L05
 
test      rsi,rsi
je        short M07_L02
mov       r8d,[r15+8]
cmp       r8d,[rsi+8]
jne       short M07_L02
lea       rcx,[r15+0C]
mov       r8d,[r15+8]
add       r8d,r8d
lea       rdx,[rsi+0C]
call      qword ptr [7FF9F5E75068]; System.SpanHelpers.SequenceEqual(Byte ByRef, Byte ByRef, UIntPtr)
test      eax,eax
jne       near ptr M07_L01
jmp       short M07_L02
 
System.Text.RegularExpressions.RegexReplacement.Replace(System.Text.RegularExpressions.Regex, System.String, Int32, Int32)
sub       rsp,28
mov       eax,[rsp+50]
cmp       r9d,0FFFFFFFF
jl        short M08_L01
cmp       [r8+8],eax
jb        short M08_L02
test      r9d,r9d
je        short M08_L03
test      byte ptr [rdx+40],40
je        short M08_L04
M08_L00
 
mov       [rsp+50],eax
add       rsp,28
jmp       qword ptr [7FF9F688DB90]; System.Text.RegularExpressions.RegexReplacement.ReplaceNonSimpleText(System.Text.RegularExpressions.Regex, System.String, Int32, Int32)
M08_L01
 
mov       ecx,3
mov       edx,1
call      qword ptr [7FF9F6A55260]
int       3
M08_L02
 
mov       ecx,0E
xor       edx,edx
call      qword ptr [7FF9F6A55260]
int       3
M08_L03
 
mov       rax,r8
add       rsp,28
ret
M08_L04
 
cmp       byte ptr [rcx+20],0
jne       short M08_L00
mov       r10,[rcx+10]
cmp       dword ptr [r10+8],0
jne       short M08_L05
mov       rcx,rdx
mov       r10,1E758890008
jmp       short M08_L06
M08_L05
 
mov       r10,[rcx+8]
cmp       dword ptr [r10+8],0
jbe       short M08_L07
mov       r10,[r10+10]
mov       rcx,rdx
M08_L06
 
mov       [rsp+50],eax
mov       rdx,r8
mov       r8,r10
add       rsp,28
jmp       qword ptr [7FF9F688DB78]
M08_L07
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M09_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M09_L02
test      rbx,rbx
je        short M09_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M09_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M09_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FF9F5E75B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FF9F5E75B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M09_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M09_L01
 
call      qword ptr [7FF9F602EF40]
int       3
M09_L02
 
test      rbx,rbx
je        short M09_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M09_L04
M09_L03
 
mov       rax,1E758890008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M09_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 
System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
push      rdi
push      rsi
push      rbx
sub       rsp,20
mov       rsi,rcx
mov       rbx,rdx
mov       rdi,[rbx]
M10_L00
 
mov       rdi,[rdi+10]
cmp       rdi,rsi
jne       short M10_L02
M10_L01
 
mov       rcx,7FF9F68FC6D4
call      CORINFO_HELP_COUNTPROFILE32
mov       rax,rbx
add       rsp,20
pop       rbx
pop       rsi
pop       rdi
ret
M10_L02
 
test      rdi,rdi
je        near ptr M10_L08
mov       rdi,[rdi+10]
cmp       rdi,rsi
jne       short M10_L03
mov       rcx,7FF9F68FC6D0
call      CORINFO_HELP_COUNTPROFILE32
jmp       short M10_L01
M10_L03
 
test      rdi,rdi
je        short M10_L04
mov       rdi,[rdi+10]
cmp       rdi,rsi
jne       short M10_L05
mov       rcx,7FF9F68FC6C8
call      CORINFO_HELP_COUNTPROFILE32
jmp       short M10_L01
M10_L04
 
mov       rcx,7FF9F68FC6CC
call      CORINFO_HELP_COUNTPROFILE32
jmp       short M10_L08
M10_L05
 
test      rdi,rdi
je        short M10_L07
mov       rdi,[rdi+10]
cmp       rdi,rsi
je        short M10_L06
test      rdi,rdi
je        short M10_L09
mov       rcx,7FF9F68FC6BC
call      CORINFO_HELP_COUNTPROFILE32
jmp       near ptr M10_L00
M10_L06
 
mov       rcx,7FF9F68FC6C0
call      CORINFO_HELP_COUNTPROFILE32
jmp       near ptr M10_L01
M10_L07
 
mov       rcx,7FF9F68FC6C4
call      CORINFO_HELP_COUNTPROFILE32
M10_L08
 
mov       rcx,7FF9F68FC6D8
call      CORINFO_HELP_COUNTPROFILE32
mov       rcx,rsi
mov       rdx,rbx
add       rsp,20
pop       rbx
pop       rsi
pop       rdi
jmp       qword ptr [7FF9F5DC43A8]
M10_L09
 
mov       rcx,7FF9F68FC6B8
call      CORINFO_HELP_COUNTPROFILE32
jmp       short M10_L08
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.RemoveCRLF01()
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,40
xor       eax,eax
mov       [rsp+38],rax
mov       [rsp+30],rax
mov       rbx,rcx
mov       rcx,[rbx+298]
test      rcx,rcx
je        near ptr M00_L07
mov       [rsp+38],rcx
mov       rcx,2822EC0EF18
mov       rsi,[rcx]
cmp       byte ptr [rsi+9E],0
jne       short M00_L00
mov       rcx,rsi
call      qword ptr [7FF9F62F6A48]; System.Text.Json.JsonSerializerOptions.ConfigureForJsonSerializer()
M00_L00
 
mov       rcx,rsi
call      qword ptr [7FF9F62F6358]; System.Text.Json.JsonSerializerOptions.get_ObjectTypeInfo()
mov       r8,rax
test      r8,r8
jne       short M00_L02
M00_L01
 
lea       rdx,[rsp+38]
mov       rcx,offset MD_System.Text.Json.JsonSerializer.WriteString[[System.Object, System.Private.CoreLib]](System.Object ByRef, System.Text.Json.Serialization.Metadata.JsonTypeInfo`1)
call      qword ptr [7FF9F677D200]; System.Text.Json.JsonSerializer.WriteString[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef, System.Text.Json.Serialization.Metadata.JsonTypeInfo`1)
test      rax,rax
je        short M00_L03
mov       ecx,[rax+8]
xor       edx,edx
test      ecx,ecx
sete      dl
test      edx,edx
sete      dl
movzx     edx,dl
test      ecx,ecx
jne       short M00_L04
jmp       short M00_L04
M00_L02
 
mov       rcx,offset MT_System.Text.Json.Serialization.Metadata.JsonTypeInfo`1[[System.Object, System.Private.CoreLib]]
cmp       [r8],rcx
jne       near ptr M00_L08
jmp       short M00_L01
M00_L03
 
xor       edx,edx
M00_L04
 
test      edx,edx
je        near ptr M00_L09
mov       rcx,rax
cmp       [rcx],ecx
call      qword ptr [7FF9F5DD7318]; System.String.Trim()
mov       rdx,rax
mov       rcx,offset MD_DotNetTips.Spargine.Core.Serialization.JsonSerialization.Deserialize[[System.String, System.Private.CoreLib]](System.String)
call      qword ptr [7FF9F67CE5E0]; DotNetTips.Spargine.Core.Serialization.JsonSerialization.Deserialize[[System.__Canon, System.Private.CoreLib]](System.String)
mov       rsi,rax
test      rsi,rsi
je        near ptr M00_L12
mov       rcx,2822EC0DC68
mov       rdi,[rcx]
mov       rbp,rsi
test      byte ptr [rdi+40],40
je        near ptr M00_L11
mov       r14d,[rsi+8]
M00_L05
 
mov       rcx,rdi
call      qword ptr [7FF9F621D830]; System.Text.RegularExpressions.Regex.get_RegexReplacementWeakReference()
mov       rcx,rax
mov       r8,[rdi+20]
mov       [rsp+20],r8
mov       r8d,[rdi+40]
mov       [rsp+28],r8d
mov       r8,[rdi+18]
mov       r9d,[rdi+44]
mov       rdx,2C2BC900008
call      qword ptr [7FF9F689F648]; System.Text.RegularExpressions.RegexReplacement.GetOrCreate(System.WeakReference`1, System.String, System.Collections.Hashtable, Int32, System.Collections.Hashtable, System.Text.RegularExpressions.RegexOptions)
mov       rcx,rax
mov       [rsp+20],r14d
mov       rdx,rdi
mov       r8,rsi
mov       r9d,0FFFFFFFF
cmp       [rcx],ecx
call      qword ptr [7FF9F689F6A8]; System.Text.RegularExpressions.RegexReplacement.Replace(System.Text.RegularExpressions.Regex, System.String, Int32, Int32)
M00_L06
 
mov       [rsp+30],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+30]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,40
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
ret
M00_L07
 
call      qword ptr [7FF9F63552C0]
mov       ecx,7D9
mov       rdx,7FF9F62D3C60
call      CORINFO_HELP_STRCNS
mov       rbp,rax
mov       ecx,1446
mov       rdx,7FF9F6165A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbp
call      qword ptr [7FF9F5DD6B08]; System.String.Concat(System.String, System.String)
mov       r14,rax
mov       ecx,1
mov       rdx,7FF9F62D3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,r14
call      qword ptr [7FF9F5DD6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63550B0]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FF9F6066670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L08
 
mov       rdx,rax
call      qword ptr [7FF9F5DD43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M00_L09
 
call      qword ptr [7FF9F6355368]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L10
call      qword ptr [7FF9F63550B0]
mov       rbx,rax
M00_L10
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,2C2BC9148E8
mov       r8,rbx
call      qword ptr [7FF9F6066670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L11
 
mov       rsi,rbp
xor       r14d,r14d
jmp       near ptr M00_L05
M00_L12
 
xor       eax,eax
jmp       near ptr M00_L06
 
System.Text.Json.JsonSerializerOptions.ConfigureForJsonSerializer()
M01_L00
 
push      rbp
sub       rsp,80
vzeroupper
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
mov       rax,0FFFFFFFFFFFFFFA0
M01_L01
 
vmovdqa   xmmword ptr [rax+rbp],xmm4
vmovdqa   xmmword ptr [rbp+rax+10],xmm4
vmovdqa   xmmword ptr [rbp+rax+20],xmm4
add       rax,30
jne       short M01_L01
mov       [rbp+10],rcx
call      qword ptr [7FF9F62F7780]; System.Text.Json.JsonSerializer.get_IsReflectionEnabledByDefault()
test      eax,eax
je        near ptr M01_L05
call      qword ptr [7FF9F635DA40]; System.Text.Json.Serialization.Metadata.DefaultJsonTypeInfoResolver.get_DefaultInstance()
mov       [rbp-18],rax
mov       rdx,[rbp+10]
mov       rdx,[rdx+20]
mov       [rbp-30],rdx
cmp       qword ptr [rbp-30],0
je        short M01_L02
mov       rdx,[rbp-30]
mov       rcx,offset MT_System.Text.Json.Serialization.JsonSerializerContext
call      qword ptr [7FF9F5DD4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       [rbp-28],rax
cmp       qword ptr [rbp-28],0
jne       short M01_L03
jmp       near ptr M01_L09
M01_L02
 
mov       rcx,[rbp+10]
lea       rcx,[rcx+20]
mov       rdx,[rbp-18]
call      CORINFO_HELP_ASSIGN_REF
jmp       near ptr M01_L09
M01_L03
 
call      qword ptr [7FF9F62F7180]
test      eax,eax
je        near ptr M01_L09
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rbp-10],xmm0
lea       rdx,[rbp-10]
mov       rcx,offset MD_.InlineArrayElementRef[[<>y__InlineArray2`1[[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]], System.Text.Json],[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]](<>y__InlineArray2`1 ByRef, Int32)
xor       r8d,r8d
call      qword ptr [7FF9F635DC50]
mov       rdx,[rbp-28]
mov       rcx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rdx,[rbp-10]
mov       rcx,offset MD_.InlineArrayElementRef[[<>y__InlineArray2`1[[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]], System.Text.Json],[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]](<>y__InlineArray2`1 ByRef, Int32)
mov       r8d,1
call      qword ptr [7FF9F635DC50]
mov       rdx,[rbp-18]
mov       rcx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rbp-48]
lea       r8,[rbp-10]
mov       rdx,offset MD_.InlineArrayAsReadOnlySpan[[<>y__InlineArray2`1[[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]], System.Text.Json],[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]](<>y__InlineArray2`1 ByRef, Int32)
mov       r9d,2
call      qword ptr [7FF9F635DC80]
mov       rcx,[rbp+10]
lea       rcx,[rcx+60]
mov       [rbp-60],rcx
vmovdqu   xmm0,xmmword ptr [rbp-48]
vmovdqu   xmmword ptr [rbp-58],xmm0
lea       rcx,[rbp-58]
call      qword ptr [7FF9F635DCC8]
mov       rcx,[rbp-60]
mov       rdx,rax
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rbp+10]
mov       rcx,[rcx+8]
mov       [rbp-20],rcx
cmp       qword ptr [rbp-20],0
je        near ptr M01_L09
mov       rcx,[rbp-20]
cmp       [rcx],ecx
call      qword ptr [7FF9F635DAE8]; System.Text.Json.JsonSerializerOptions+CachingContext.get_Options()
cmp       rax,[rbp+10]
je        short M01_L04
mov       rcx,[rbp-20]
cmp       [rcx],ecx
call      qword ptr [7FF9F635DAE8]; System.Text.Json.JsonSerializerOptions+CachingContext.get_Options()
movzx     ecx,byte ptr [rax+9E]
test      ecx,ecx
jne       short M01_L04
mov       rcx,[rbp-20]
cmp       [rcx],ecx
call      qword ptr [7FF9F635DAE8]; System.Text.Json.JsonSerializerOptions+CachingContext.get_Options()
mov       rcx,rax
cmp       [rcx],ecx
call      qword ptr [7FF9F62F6A48]
jmp       short M01_L09
M01_L04
 
mov       rcx,[rbp-20]
cmp       [rcx],ecx
call      qword ptr [7FF9F635DB60]
jmp       short M01_L09
M01_L05
 
mov       rdx,[rbp+10]
mov       rdx,[rdx+20]
mov       [rbp-30],rdx
cmp       qword ptr [rbp-30],0
je        short M01_L06
mov       rdx,[rbp-30]
mov       rcx,offset MT_System.Text.Json.Serialization.Metadata.EmptyJsonTypeInfoResolver
call      qword ptr [7FF9F5DD4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
test      rax,rax
je        short M01_L07
M01_L06
 
mov       dword ptr [rbp-34],1
jmp       short M01_L08
M01_L07
 
xor       eax,eax
mov       [rbp-34],eax
M01_L08
 
cmp       dword ptr [rbp-34],0
je        short M01_L09
call      qword ptr [7FF9F62FD098]
M01_L09
 
mov       rax,[rbp+10]
mov       byte ptr [rax+9D],1
mov       rax,[rbp+10]
mov       byte ptr [rax+9E],1
add       rsp,80
pop       rbp
ret
 
System.Text.Json.JsonSerializerOptions.get_ObjectTypeInfo()
push      rsi
push      rbx
sub       rsp,38
mov       rbx,rcx
mov       rax,[rbx+18]
test      rax,rax
je        short M02_L01
M02_L00
 
add       rsp,38
pop       rbx
pop       rsi
ret
M02_L01
 
mov       byte ptr [rsp+30],1
mov       byte ptr [rsp+31],1
xor       ecx,ecx
mov       [rsp+20],ecx
mov       [rsp+28],ecx
mov       rcx,rbx
movzx     r9d,word ptr [rsp+30]
mov       rdx,2C2BC902D10
mov       r8d,1
call      qword ptr [7FF9F62F62F8]; System.Text.Json.JsonSerializerOptions.GetTypeInfoInternal(System.Type, Boolean, System.Nullable`1, Boolean, Boolean)
mov       rsi,rax
lea       rcx,[rbx+18]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rax,rsi
jmp       short M02_L00
 
System.Text.Json.JsonSerializer.WriteString[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef, System.Text.Json.Serialization.Metadata.JsonTypeInfo`1)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,88
vzeroupper
lea       rbp,[rsp+0C0]
xor       eax,eax
mov       [rbp-98],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-90],xmm4
vmovdqa   xmmword ptr [rbp-80],xmm4
vmovdqa   xmmword ptr [rbp-70],xmm4
vmovdqa   xmmword ptr [rbp-60],xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
mov       [rbp-40],rax
mov       [rbp-0A0],rsp
mov       rsi,rdx
mov       rbx,r8
mov       rdi,[rbx+0B0]
lea       rdx,[rbp-48]
mov       rcx,rdi
cmp       [rcx],ecx
call      qword ptr [7FF9F62F6AC0]; System.Text.Json.JsonSerializerOptions.GetWriterOptions()
mov       edi,[rdi+7C]
mov       rcx,gs:[58]
mov       rcx,[rcx+30]
cmp       dword ptr [rcx+190],3
jl        near ptr M03_L11
mov       rcx,[rcx+198]
mov       rcx,[rcx+18]
test      rcx,rcx
je        near ptr M03_L11
mov       rax,[rcx]
add       rax,10
mov       r14,[rax]
test      r14,r14
je        near ptr M03_L12
M03_L00
 
mov       ecx,[r14+18]
lea       edx,[rcx+1]
mov       [r14+18],edx
test      ecx,ecx
jne       near ptr M03_L15
mov       rcx,[r14+8]
mov       [rbp-90],rcx
mov       r14,[r14+10]
mov       rcx,[rbp-90]
cmp       [rcx],cl
mov       rcx,2822EC01F20
mov       rcx,[rcx]
mov       edx,edi
call      qword ptr [7FF9F65D4028]; System.Buffers.SharedArrayPool`1[[System.Byte, System.Private.CoreLib]].Rent(Int32)
mov       rcx,[rbp-90]
lea       rcx,[rcx+10]
mov       rdx,rax
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rbp-90]
xor       edx,edx
mov       [rcx+20],edx
lea       rcx,[r14+8]
mov       rdx,[rbp-90]
call      CORINFO_HELP_ASSIGN_REF
mov       edi,[rbp-3C]
lea       rcx,[r14+68]
mov       rdx,[rbp-48]
call      CORINFO_HELP_ASSIGN_REF
mov       ecx,[rbp-40]
mov       [r14+70],ecx
mov       ecx,[rbp-3C]
mov       [r14+74],ecx
mov       ecx,9
mov       edx,20
test      byte ptr [r14+74],8
cmove     ecx,edx
mov       [r14+3B],cl
mov       ecx,edi
and       ecx,7F0
sar       ecx,4
je        short M03_L01
xor       edx,edx
cmp       ecx,2
cmovne    edx,ecx
jmp       short M03_L02
M03_L01
 
mov       edx,2
M03_L02
 
mov       [r14+2C],edx
test      dil,4
jne       near ptr M03_L13
mov       rdi,2C2BC901C08
M03_L03
 
mov       ecx,[rdi+8]
mov       [r14+30],ecx
cmp       dword ptr [r14+70],0
je        near ptr M03_L14
M03_L04
 
mov       [rbp-88],r14
mov       rcx,rbx
mov       rdx,r14
mov       r8,rsi
xor       r9d,r9d
call      qword ptr [7FF9F635D1E8]; System.Text.Json.Serialization.Metadata.JsonTypeInfo`1[[System.__Canon, System.Private.CoreLib]].Serialize(System.Text.Json.Utf8JsonWriter, System.__Canon ByRef, System.Object)
mov       rcx,[rbp-90]
mov       rcx,[rcx+10]
mov       rax,[rbp-90]
mov       r15d,[rax+20]
test      rcx,rcx
je        short M03_L08
cmp       [rcx+8],r15d
jb        short M03_L07
M03_L05
 
xor       r13d,r13d
xor       r12d,r12d
test      rcx,rcx
je        short M03_L10
mov       rax,[rcx]
test      dword ptr [rax],80000000
je        short M03_L09
lea       r13,[rcx+10]
mov       r12d,[rcx+8]
M03_L06
 
cmp       r15d,r12d
ja        short M03_L07
mov       r12d,r15d
jmp       short M03_L10
M03_L07
 
call      qword ptr [7FF9F603E9D0]
int       3
M03_L08
 
test      r15d,r15d
jne       short M03_L07
xor       ecx,ecx
xor       r15d,r15d
jmp       short M03_L05
M03_L09
 
lea       rdx,[rbp-58]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+28]
mov       r13,[rbp-58]
mov       r12d,[rbp-50]
jmp       short M03_L06
M03_L10
 
mov       rcx,r13
mov       [rbp-80],rcx
mov       [rbp-78],r12d
lea       rcx,[rbp-80]
call      qword ptr [7FF9F635E718]; System.Text.Json.JsonReaderHelper.TranscodeHelper(System.ReadOnlySpan`1)
mov       [rbp-98],rax
mov       rcx,rsp
call      M03_L16
nop
mov       rax,[rbp-98]
add       rsp,88
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M03_L11
 
mov       ecx,3
call      CORINFO_HELP_GETSHARED_GCTHREADSTATIC_BASE_NOCTOR_OPTIMIZED
mov       r14,[rax]
test      r14,r14
jne       near ptr M03_L00
M03_L12
 
mov       rcx,offset MT_System.Text.Json.Utf8JsonWriterCache+ThreadLocalState
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
call      qword ptr [7FF9F677E028]; System.Text.Json.Utf8JsonWriterCache+ThreadLocalState..ctor()
mov       ecx,3
call      CORINFO_HELP_GETSHARED_GCTHREADSTATIC_BASE_NOCTOR_OPTIMIZED
mov       rcx,rax
mov       rdx,r14
call      CORINFO_HELP_ASSIGN_REF
jmp       near ptr M03_L00
M03_L13
 
mov       rcx,7FF9F6304D40
mov       edx,69
call      CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
mov       rcx,2822EC0F9D0
mov       rdi,[rcx]
jmp       near ptr M03_L03
M03_L14
 
lea       rcx,[r14+68]
mov       edx,3E8
call      qword ptr [7FF9F66B7A20]; System.Text.Json.JsonWriterOptions.set_MaxDepth(Int32)
jmp       near ptr M03_L04
M03_L15
 
mov       rcx,offset MT_System.Text.Json.PooledByteBufferWriter
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       edx,edi
call      qword ptr [7FF9F6727DB0]
mov       [rbp-90],r14
mov       rcx,offset MT_System.Text.Json.Utf8JsonWriter
call      CORINFO_HELP_NEWSFAST
mov       r13,rax
mov       rdx,r14
vmovdqu   xmm0,xmmword ptr [rbp-48]
vmovdqu   xmmword ptr [rbp-70],xmm0
mov       rcx,r13
lea       r8,[rbp-70]
call      qword ptr [7FF9F66BC0D8]
mov       r14,r13
jmp       near ptr M03_L04
M03_L16
 
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,28
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+0C0]
mov       r14,[rbp-90]
mov       rcx,gs:[58]
mov       rcx,[rcx+30]
cmp       dword ptr [rcx+190],3
jl        short M03_L17
mov       rcx,[rcx+198]
mov       rcx,[rcx+18]
test      rcx,rcx
jne       short M03_L18
M03_L17
 
mov       ecx,3
call      CORINFO_HELP_GETSHARED_GCTHREADSTATIC_BASE_NOCTOR_OPTIMIZED
jmp       short M03_L19
M03_L18
 
mov       rax,[rcx]
add       rax,10
M03_L19
 
mov       r15,[rax]
xor       ecx,ecx
mov       r12,[rbp-88]
mov       [r12+34],ecx
mov       [r12+20],rcx
mov       [r12+40],rcx
mov       [r12+48],rcx
mov       byte ptr [r12+38],0
mov       byte ptr [r12+3A],0
mov       byte ptr [r12+39],0
mov       [r12+28],ecx
mov       [r12+50],rcx
mov       [r12+58],rcx
mov       [r12+60],rcx
mov       [r12+10],rcx
mov       [r12+18],rcx
mov       [r12+8],rcx
mov       rcx,[rbp-90]
mov       rcx,[rcx+10]
mov       rdx,[rbp-90]
mov       r8d,[rdx+20]
test      rcx,rcx
jne       short M03_L20
test      r8d,r8d
jne       short M03_L21
xor       ecx,ecx
xor       r8d,r8d
jmp       short M03_L23
M03_L20
 
cmp       [rcx+8],r8d
jae       short M03_L22
M03_L21
 
call      qword ptr [7FF9F603E9D0]
int       3
M03_L22
 
add       rcx,10
M03_L23
 
mov       edx,r8d
mov       [rbp-60],rdx
test      rdx,rdx
je        short M03_L25
cmp       rdx,300
ja        short M03_L24
xor       edx,edx
mov       r8d,[rbp-60]
call      CORINFO_HELP_MEMSET
jmp       short M03_L25
M03_L24
 
call      qword ptr [7FF9F5E85BA8]; System.Buffer._ZeroMemory(Byte ByRef, UIntPtr)
M03_L25
 
xor       ecx,ecx
mov       [r14+20],ecx
mov       rdx,[r14+10]
mov       [r14+10],rcx
mov       rcx,2822EC01F20
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65D4030]; System.Buffers.SharedArrayPool`1[[System.Byte, System.Private.CoreLib]].Return(Byte[], Boolean)
dec       dword ptr [r15+18]
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Trim()
push      rsi
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,[rbx+8]
test      esi,esi
je        short M04_L03
movzx     ecx,word ptr [rbx+0C]
cmp       ecx,100
jae       short M04_L00
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       short M04_L04
jmp       short M04_L01
M04_L00
 
call      qword ptr [7FF9F672E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       short M04_L04
M04_L01
 
dec       esi
mov       ecx,esi
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L02
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       short M04_L04
jmp       short M04_L03
M04_L02
 
call      qword ptr [7FF9F672E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       short M04_L04
M04_L03
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rsi
ret
M04_L04
 
mov       rcx,rbx
mov       edx,3
call      qword ptr [7FF9F5DD73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
nop
add       rsp,28
pop       rbx
pop       rsi
ret
 
DotNetTips.Spargine.Core.Serialization.JsonSerialization.Deserialize[[System.__Canon, System.Private.CoreLib]](System.String)
push      rsi
push      rbx
sub       rsp,58
vzeroupper
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
mov       [rsp+50],rcx
mov       rsi,rcx
mov       rbx,rdx
mov       rcx,rbx
test      rcx,rcx
je        short M05_L00
mov       eax,[rcx+8]
xor       edx,edx
test      eax,eax
sete      dl
test      edx,edx
sete      dl
movzx     edx,dl
test      eax,eax
jne       short M05_L01
jmp       short M05_L01
M05_L00
 
xor       edx,edx
M05_L01
 
test      edx,edx
je        near ptr M05_L10
cmp       [rcx],ecx
call      qword ptr [7FF9F5DD7318]; System.String.Trim()
mov       rbx,rax
mov       rcx,[rsi+10]
mov       rcx,[rcx+10]
test      rcx,rcx
je        short M05_L03
M05_L02
 
mov       r8,2822EC0DD88
mov       r8,[r8]
mov       rdx,rbx
call      qword ptr [7FF9F67CE640]; System.Text.Json.JsonSerializer.Deserialize[[System.__Canon, System.Private.CoreLib]](System.String, System.Text.Json.JsonSerializerOptions)
test      rax,rax
je        near ptr M05_L12
add       rsp,58
pop       rbx
pop       rsi
ret
M05_L03
 
mov       rcx,rsi
mov       rdx,7FF9F67DC778
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
jmp       short M05_L02
M05_L04
 
lea       rcx,[rsp+28]
mov       rdx,2C2BC9180F8
call      qword ptr [7FF9F5FC58F0]
M05_L05
 
mov       rcx,[rsi+10]
mov       rcx,[rcx]
call      CORINFO_HELP_TYPEHANDLE_TO_RUNTIMETYPE
mov       r8,rax
lea       rcx,[rsp+28]
mov       rdx,offset MD_System.Runtime.CompilerServices.DefaultInterpolatedStringHandler.AppendFormatted[[System.Type, System.Private.CoreLib]](System.Type)
call      qword ptr [7FF9F621E100]; System.Runtime.CompilerServices.DefaultInterpolatedStringHandler.AppendFormatted[[System.__Canon, System.Private.CoreLib]](System.__Canon)
mov       ebx,[rsp+38]
cmp       ebx,[rsp+48]
jbe       short M05_L07
M05_L06
 
call      qword ptr [7FF9F603E9D0]
int       3
M05_L07
 
mov       rcx,[rsp+40]
mov       edx,ebx
lea       rcx,[rcx+rdx*2]
mov       edx,[rsp+48]
sub       edx,ebx
cmp       edx,1
jb        short M05_L08
mov       rdx,2C2BC900C54
movzx     eax,word ptr [rdx]
mov       [rcx],ax
mov       ecx,[rsp+38]
inc       ecx
mov       [rsp+38],ecx
jmp       short M05_L09
M05_L08
 
lea       rcx,[rsp+28]
mov       rdx,2C2BC900C48
call      qword ptr [7FF9F5FC58F0]
M05_L09
 
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
lea       rcx,[rsp+28]
call      qword ptr [7FF9F5FC5740]; System.Runtime.CompilerServices.DefaultInterpolatedStringHandler.ToStringAndClear()
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F6066718]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M05_L10
 
call      qword ptr [7FF9F6355368]
mov       rsi,rax
test      rsi,rsi
jne       short M05_L11
call      qword ptr [7FF9F63550B0]
mov       rsi,rax
M05_L11
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,2C2BC9148E8
mov       r8,rsi
call      qword ptr [7FF9F6066670]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M05_L12
 
lea       rcx,[rsp+28]
mov       edx,2A
mov       r8d,1
call      qword ptr [7FF9F5FC56B0]; System.Runtime.CompilerServices.DefaultInterpolatedStringHandler..ctor(Int32, Int32)
mov       ecx,[rsp+38]
cmp       ecx,[rsp+48]
ja        near ptr M05_L06
mov       rdx,[rsp+40]
mov       eax,ecx
lea       rdx,[rdx+rax*2]
mov       eax,[rsp+48]
sub       eax,ecx
cmp       eax,29
jb        near ptr M05_L04
mov       rcx,2C2BC918104
vmovdqu   ymm0,ymmword ptr [rcx]
vmovdqu   ymm1,ymmword ptr [rcx+20]
vmovdqu   ymm2,ymmword ptr [rcx+32]
vmovdqu   ymmword ptr [rdx],ymm0
vmovdqu   ymmword ptr [rdx+20],ymm1
vmovdqu   ymmword ptr [rdx+32],ymm2
mov       ecx,[rsp+38]
add       ecx,29
mov       [rsp+38],ecx
jmp       near ptr M05_L05
 
System.Text.RegularExpressions.Regex.get_RegexReplacementWeakReference()
push      rdi
push      rsi
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rax,[rbx+30]
test      rax,rax
je        short M06_L01
M06_L00
 
add       rsp,20
pop       rbx
pop       rsi
pop       rdi
ret
M06_L01
 
lea       rsi,[rbx+30]
mov       rcx,offset MT_System.WeakReference`1[[System.Text.RegularExpressions.RegexReplacement, System.Text.RegularExpressions]]
call      CORINFO_HELP_NEWFAST
mov       rdi,rax
mov       rcx,rdi
xor       edx,edx
xor       r8d,r8d
call      qword ptr [7FF9F5E8D098]; System.WeakReference`1[[System.__Canon, System.Private.CoreLib]].Create(System.__Canon, Boolean)
mov       rcx,rsi
mov       rdx,rdi
xor       r8d,r8d
call      System.Threading.Interlocked.CompareExchange(System.Object ByRef, System.Object, System.Object)
test      rax,rax
jne       short M06_L00
mov       rax,[rbx+30]
jmp       short M06_L00
 
System.Text.RegularExpressions.RegexReplacement.GetOrCreate(System.WeakReference`1, System.String, System.Collections.Hashtable, Int32, System.Collections.Hashtable, System.Text.RegularExpressions.RegexOptions)
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,30
mov       rbx,rcx
mov       rsi,rdx
mov       rdi,r8
mov       ebp,r9d
mov       rax,[rbx+8]
and       rax,0FFFFFFFFFFFFFFFE
je        short M07_L03
test      al,2
jne       short M07_L04
mov       r14,[rax]
M07_L00
 
test      r14,r14
je        short M07_L02
mov       r15,[r14+18]
cmp       [r15],r15b
cmp       r15,rsi
jne       short M07_L05
M07_L01
 
mov       rax,r14
add       rsp,30
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
ret
M07_L02
 
mov       r13,[rsp+90]
mov       [rsp+20],r13
mov       rcx,rsi
mov       edx,[rsp+98]
mov       r8,rdi
mov       r9d,ebp
call      qword ptr [7FF9F68B4048]; System.Text.RegularExpressions.RegexParser.ParseReplacement(System.String, System.Text.RegularExpressions.RegexOptions, System.Collections.Hashtable, Int32, System.Collections.Hashtable)
mov       r14,rax
mov       rcx,rbx
mov       rdx,r14
call      qword ptr [7FF9F5E8D0B0]; System.WeakReference`1[[System.__Canon, System.Private.CoreLib]].SetTarget(System.__Canon)
jmp       short M07_L01
M07_L03
 
xor       r14d,r14d
jmp       short M07_L00
M07_L04
 
and       rax,0FFFFFFFFFFFFFFFC
mov       rcx,[rax]
cmp       [rcx],ecx
call      qword ptr [7FF9F6A661D8]
mov       r14,rax
jmp       short M07_L00
M07_L05
 
test      rsi,rsi
je        short M07_L02
mov       r8d,[r15+8]
cmp       r8d,[rsi+8]
jne       short M07_L02
lea       rcx,[r15+0C]
mov       r8d,[r15+8]
add       r8d,r8d
lea       rdx,[rsi+0C]
call      qword ptr [7FF9F5E85068]; System.SpanHelpers.SequenceEqual(Byte ByRef, Byte ByRef, UIntPtr)
test      eax,eax
jne       near ptr M07_L01
jmp       short M07_L02
 
System.Text.RegularExpressions.RegexReplacement.Replace(System.Text.RegularExpressions.Regex, System.String, Int32, Int32)
sub       rsp,28
mov       eax,[rsp+50]
cmp       r9d,0FFFFFFFF
jl        short M08_L01
cmp       [r8+8],eax
jb        short M08_L02
test      r9d,r9d
je        short M08_L03
test      byte ptr [rdx+40],40
je        short M08_L04
M08_L00
 
mov       [rsp+50],eax
add       rsp,28
jmp       qword ptr [7FF9F689F6D8]; System.Text.RegularExpressions.RegexReplacement.ReplaceNonSimpleText(System.Text.RegularExpressions.Regex, System.String, Int32, Int32)
M08_L01
 
mov       ecx,3
mov       edx,1
call      qword ptr [7FF9F6A66100]
int       3
M08_L02
 
mov       ecx,0E
xor       edx,edx
call      qword ptr [7FF9F6A66100]
int       3
M08_L03
 
mov       rax,r8
add       rsp,28
ret
M08_L04
 
cmp       byte ptr [rcx+20],0
jne       short M08_L00
mov       r10,[rcx+10]
cmp       dword ptr [r10+8],0
jne       short M08_L05
mov       rcx,rdx
mov       r10,2C2BC900008
jmp       short M08_L06
M08_L05
 
mov       r10,[rcx+8]
cmp       dword ptr [r10+8],0
jbe       short M08_L07
mov       r10,[r10+10]
mov       rcx,rdx
M08_L06
 
mov       [rsp+50],eax
mov       rdx,r8
mov       r8,r10
add       rsp,28
jmp       qword ptr [7FF9F689F6C0]
M08_L07
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M09_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M09_L02
test      rbx,rbx
je        short M09_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M09_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M09_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FF9F5E85B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FF9F5E85B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M09_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M09_L01
 
call      qword ptr [7FF9F603EF40]
int       3
M09_L02
 
test      rbx,rbx
je        short M09_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M09_L04
M09_L03
 
mov       rax,2C2BC900008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M09_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 
System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
push      rdi
push      rsi
push      rbx
sub       rsp,20
mov       rsi,rcx
mov       rbx,rdx
mov       rdi,[rbx]
M10_L00
 
mov       rdi,[rdi+10]
cmp       rdi,rsi
jne       short M10_L02
M10_L01
 
mov       rcx,7FF9F690E8DC
call      CORINFO_HELP_COUNTPROFILE32
mov       rax,rbx
add       rsp,20
pop       rbx
pop       rsi
pop       rdi
ret
M10_L02
 
test      rdi,rdi
je        near ptr M10_L08
mov       rdi,[rdi+10]
cmp       rdi,rsi
jne       short M10_L03
mov       rcx,7FF9F690E8D8
call      CORINFO_HELP_COUNTPROFILE32
jmp       short M10_L01
M10_L03
 
test      rdi,rdi
je        short M10_L04
mov       rdi,[rdi+10]
cmp       rdi,rsi
jne       short M10_L05
mov       rcx,7FF9F690E8D0
call      CORINFO_HELP_COUNTPROFILE32
jmp       short M10_L01
M10_L04
 
mov       rcx,7FF9F690E8D4
call      CORINFO_HELP_COUNTPROFILE32
jmp       short M10_L08
M10_L05
 
test      rdi,rdi
je        short M10_L07
mov       rdi,[rdi+10]
cmp       rdi,rsi
je        short M10_L06
test      rdi,rdi
je        short M10_L09
mov       rcx,7FF9F690E8C4
call      CORINFO_HELP_COUNTPROFILE32
jmp       near ptr M10_L00
M10_L06
 
mov       rcx,7FF9F690E8C8
call      CORINFO_HELP_COUNTPROFILE32
jmp       near ptr M10_L01
M10_L07
 
mov       rcx,7FF9F690E8CC
call      CORINFO_HELP_COUNTPROFILE32
M10_L08
 
mov       rcx,7FF9F690E8E0
call      CORINFO_HELP_COUNTPROFILE32
mov       rcx,rsi
mov       rdx,rbx
add       rsp,20
pop       rbx
pop       rsi
pop       rdi
jmp       qword ptr [7FF9F5DD43A8]
M10_L09
 
mov       rcx,7FF9F690E8C0
call      CORINFO_HELP_COUNTPROFILE32
jmp       short M10_L08
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.RemoveCRLF01()
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,40
xor       eax,eax
mov       [rsp+38],rax
mov       [rsp+30],rax
mov       rbx,rcx
mov       rcx,[rbx+298]
test      rcx,rcx
je        near ptr M00_L07
mov       [rsp+38],rcx
mov       rcx,1D96B80CF20
mov       rsi,[rcx]
cmp       byte ptr [rsi+9E],0
jne       short M00_L00
mov       rcx,rsi
call      qword ptr [7FF9F6306A48]; System.Text.Json.JsonSerializerOptions.ConfigureForJsonSerializer()
M00_L00
 
mov       rcx,rsi
call      qword ptr [7FF9F6306358]; System.Text.Json.JsonSerializerOptions.get_ObjectTypeInfo()
mov       r8,rax
test      r8,r8
jne       short M00_L02
M00_L01
 
lea       rdx,[rsp+38]
mov       rcx,offset MD_System.Text.Json.JsonSerializer.WriteString[[System.Object, System.Private.CoreLib]](System.Object ByRef, System.Text.Json.Serialization.Metadata.JsonTypeInfo`1)
call      qword ptr [7FF9F678D200]; System.Text.Json.JsonSerializer.WriteString[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef, System.Text.Json.Serialization.Metadata.JsonTypeInfo`1)
test      rax,rax
je        short M00_L03
mov       ecx,[rax+8]
xor       edx,edx
test      ecx,ecx
sete      dl
test      edx,edx
sete      dl
movzx     edx,dl
test      ecx,ecx
jne       short M00_L04
jmp       short M00_L04
M00_L02
 
mov       rcx,offset MT_System.Text.Json.Serialization.Metadata.JsonTypeInfo`1[[System.Object, System.Private.CoreLib]]
cmp       [r8],rcx
jne       near ptr M00_L08
jmp       short M00_L01
M00_L03
 
xor       edx,edx
M00_L04
 
test      edx,edx
je        near ptr M00_L09
mov       rcx,rax
cmp       [rcx],ecx
call      qword ptr [7FF9F5DE7318]; System.String.Trim()
mov       rdx,rax
mov       rcx,offset MD_DotNetTips.Spargine.Core.Serialization.JsonSerialization.Deserialize[[System.String, System.Private.CoreLib]](System.String)
call      qword ptr [7FF9F67DE5E0]; DotNetTips.Spargine.Core.Serialization.JsonSerialization.Deserialize[[System.__Canon, System.Private.CoreLib]](System.String)
mov       rsi,rax
test      rsi,rsi
je        near ptr M00_L12
mov       rcx,1D96B80BC70
mov       rdi,[rcx]
mov       rbp,rsi
test      byte ptr [rdi+40],40
je        near ptr M00_L11
mov       r14d,[rsi+8]
M00_L05
 
mov       rcx,rdi
call      qword ptr [7FF9F622D830]; System.Text.RegularExpressions.Regex.get_RegexReplacementWeakReference()
mov       rcx,rax
mov       r8,[rdi+20]
mov       [rsp+20],r8
mov       r8d,[rdi+40]
mov       [rsp+28],r8d
mov       r8,[rdi+18]
mov       r9d,[rdi+44]
mov       rdx,219FD630008
call      qword ptr [7FF9F68AF648]; System.Text.RegularExpressions.RegexReplacement.GetOrCreate(System.WeakReference`1, System.String, System.Collections.Hashtable, Int32, System.Collections.Hashtable, System.Text.RegularExpressions.RegexOptions)
mov       rcx,rax
mov       [rsp+20],r14d
mov       rdx,rdi
mov       r8,rsi
mov       r9d,0FFFFFFFF
cmp       [rcx],ecx
call      qword ptr [7FF9F68AF6A8]; System.Text.RegularExpressions.RegexReplacement.Replace(System.Text.RegularExpressions.Regex, System.String, Int32, Int32)
M00_L06
 
mov       [rsp+30],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+30]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,40
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
ret
M00_L07
 
call      qword ptr [7FF9F63652C0]
mov       ecx,7D9
mov       rdx,7FF9F62E3C60
call      CORINFO_HELP_STRCNS
mov       rbp,rax
mov       ecx,1446
mov       rdx,7FF9F6175A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbp
call      qword ptr [7FF9F5DE6B08]; System.String.Concat(System.String, System.String)
mov       r14,rax
mov       ecx,1
mov       rdx,7FF9F62E3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,r14
call      qword ptr [7FF9F5DE6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63650B0]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FF9F6076670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L08
 
mov       rdx,rax
call      qword ptr [7FF9F5DE43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M00_L09
 
call      qword ptr [7FF9F6365368]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L10
call      qword ptr [7FF9F63650B0]
mov       rbx,rax
M00_L10
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,219FD6448E8
mov       r8,rbx
call      qword ptr [7FF9F6076670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L11
 
mov       rsi,rbp
xor       r14d,r14d
jmp       near ptr M00_L05
M00_L12
 
xor       eax,eax
jmp       near ptr M00_L06
 
System.Text.Json.JsonSerializerOptions.ConfigureForJsonSerializer()
M01_L00
 
push      rbp
sub       rsp,80
vzeroupper
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
mov       rax,0FFFFFFFFFFFFFFA0
M01_L01
 
vmovdqa   xmmword ptr [rax+rbp],xmm4
vmovdqa   xmmword ptr [rbp+rax+10],xmm4
vmovdqa   xmmword ptr [rbp+rax+20],xmm4
add       rax,30
jne       short M01_L01
mov       [rbp+10],rcx
call      qword ptr [7FF9F6307780]; System.Text.Json.JsonSerializer.get_IsReflectionEnabledByDefault()
test      eax,eax
je        near ptr M01_L05
call      qword ptr [7FF9F636DA40]; System.Text.Json.Serialization.Metadata.DefaultJsonTypeInfoResolver.get_DefaultInstance()
mov       [rbp-18],rax
mov       rdx,[rbp+10]
mov       rdx,[rdx+20]
mov       [rbp-30],rdx
cmp       qword ptr [rbp-30],0
je        short M01_L02
mov       rdx,[rbp-30]
mov       rcx,offset MT_System.Text.Json.Serialization.JsonSerializerContext
call      qword ptr [7FF9F5DE4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       [rbp-28],rax
cmp       qword ptr [rbp-28],0
jne       short M01_L03
jmp       near ptr M01_L09
M01_L02
 
mov       rcx,[rbp+10]
lea       rcx,[rcx+20]
mov       rdx,[rbp-18]
call      CORINFO_HELP_ASSIGN_REF
jmp       near ptr M01_L09
M01_L03
 
call      qword ptr [7FF9F6307180]
test      eax,eax
je        near ptr M01_L09
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rbp-10],xmm0
lea       rdx,[rbp-10]
mov       rcx,offset MD_.InlineArrayElementRef[[<>y__InlineArray2`1[[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]], System.Text.Json],[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]](<>y__InlineArray2`1 ByRef, Int32)
xor       r8d,r8d
call      qword ptr [7FF9F636DC50]
mov       rdx,[rbp-28]
mov       rcx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rdx,[rbp-10]
mov       rcx,offset MD_.InlineArrayElementRef[[<>y__InlineArray2`1[[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]], System.Text.Json],[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]](<>y__InlineArray2`1 ByRef, Int32)
mov       r8d,1
call      qword ptr [7FF9F636DC50]
mov       rdx,[rbp-18]
mov       rcx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rbp-48]
lea       r8,[rbp-10]
mov       rdx,offset MD_.InlineArrayAsReadOnlySpan[[<>y__InlineArray2`1[[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]], System.Text.Json],[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]](<>y__InlineArray2`1 ByRef, Int32)
mov       r9d,2
call      qword ptr [7FF9F636DC80]
mov       rcx,[rbp+10]
lea       rcx,[rcx+60]
mov       [rbp-60],rcx
vmovdqu   xmm0,xmmword ptr [rbp-48]
vmovdqu   xmmword ptr [rbp-58],xmm0
lea       rcx,[rbp-58]
call      qword ptr [7FF9F636DCC8]
mov       rcx,[rbp-60]
mov       rdx,rax
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rbp+10]
mov       rcx,[rcx+8]
mov       [rbp-20],rcx
cmp       qword ptr [rbp-20],0
je        near ptr M01_L09
mov       rcx,[rbp-20]
cmp       [rcx],ecx
call      qword ptr [7FF9F636DAE8]; System.Text.Json.JsonSerializerOptions+CachingContext.get_Options()
cmp       rax,[rbp+10]
je        short M01_L04
mov       rcx,[rbp-20]
cmp       [rcx],ecx
call      qword ptr [7FF9F636DAE8]; System.Text.Json.JsonSerializerOptions+CachingContext.get_Options()
movzx     ecx,byte ptr [rax+9E]
test      ecx,ecx
jne       short M01_L04
mov       rcx,[rbp-20]
cmp       [rcx],ecx
call      qword ptr [7FF9F636DAE8]; System.Text.Json.JsonSerializerOptions+CachingContext.get_Options()
mov       rcx,rax
cmp       [rcx],ecx
call      qword ptr [7FF9F6306A48]
jmp       short M01_L09
M01_L04
 
mov       rcx,[rbp-20]
cmp       [rcx],ecx
call      qword ptr [7FF9F636DB60]
jmp       short M01_L09
M01_L05
 
mov       rdx,[rbp+10]
mov       rdx,[rdx+20]
mov       [rbp-30],rdx
cmp       qword ptr [rbp-30],0
je        short M01_L06
mov       rdx,[rbp-30]
mov       rcx,offset MT_System.Text.Json.Serialization.Metadata.EmptyJsonTypeInfoResolver
call      qword ptr [7FF9F5DE4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
test      rax,rax
je        short M01_L07
M01_L06
 
mov       dword ptr [rbp-34],1
jmp       short M01_L08
M01_L07
 
xor       eax,eax
mov       [rbp-34],eax
M01_L08
 
cmp       dword ptr [rbp-34],0
je        short M01_L09
call      qword ptr [7FF9F630D098]
M01_L09
 
mov       rax,[rbp+10]
mov       byte ptr [rax+9D],1
mov       rax,[rbp+10]
mov       byte ptr [rax+9E],1
add       rsp,80
pop       rbp
ret
 
System.Text.Json.JsonSerializerOptions.get_ObjectTypeInfo()
push      rsi
push      rbx
sub       rsp,38
mov       rbx,rcx
mov       rax,[rbx+18]
test      rax,rax
je        short M02_L01
M02_L00
 
add       rsp,38
pop       rbx
pop       rsi
ret
M02_L01
 
mov       byte ptr [rsp+30],1
mov       byte ptr [rsp+31],1
xor       ecx,ecx
mov       [rsp+20],ecx
mov       [rsp+28],ecx
mov       rcx,rbx
movzx     r9d,word ptr [rsp+30]
mov       rdx,219FD632D10
mov       r8d,1
call      qword ptr [7FF9F63062F8]; System.Text.Json.JsonSerializerOptions.GetTypeInfoInternal(System.Type, Boolean, System.Nullable`1, Boolean, Boolean)
mov       rsi,rax
lea       rcx,[rbx+18]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rax,rsi
jmp       short M02_L00
 
System.Text.Json.JsonSerializer.WriteString[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef, System.Text.Json.Serialization.Metadata.JsonTypeInfo`1)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,88
vzeroupper
lea       rbp,[rsp+0C0]
xor       eax,eax
mov       [rbp-98],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-90],xmm4
vmovdqa   xmmword ptr [rbp-80],xmm4
vmovdqa   xmmword ptr [rbp-70],xmm4
vmovdqa   xmmword ptr [rbp-60],xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
mov       [rbp-40],rax
mov       [rbp-0A0],rsp
mov       rsi,rdx
mov       rbx,r8
mov       rdi,[rbx+0B0]
lea       rdx,[rbp-48]
mov       rcx,rdi
cmp       [rcx],ecx
call      qword ptr [7FF9F6306AC0]; System.Text.Json.JsonSerializerOptions.GetWriterOptions()
mov       edi,[rdi+7C]
mov       rcx,gs:[58]
mov       rcx,[rcx+30]
cmp       dword ptr [rcx+190],3
jl        near ptr M03_L11
mov       rcx,[rcx+198]
mov       rcx,[rcx+18]
test      rcx,rcx
je        near ptr M03_L11
mov       rax,[rcx]
add       rax,10
mov       r14,[rax]
test      r14,r14
je        near ptr M03_L12
M03_L00
 
mov       ecx,[r14+18]
lea       edx,[rcx+1]
mov       [r14+18],edx
test      ecx,ecx
jne       near ptr M03_L15
mov       rcx,[r14+8]
mov       [rbp-90],rcx
mov       r14,[r14+10]
mov       rcx,[rbp-90]
cmp       [rcx],cl
mov       rcx,1D96F801F20
mov       rcx,[rcx]
mov       edx,edi
call      qword ptr [7FF9F65E4028]; System.Buffers.SharedArrayPool`1[[System.Byte, System.Private.CoreLib]].Rent(Int32)
mov       rcx,[rbp-90]
lea       rcx,[rcx+10]
mov       rdx,rax
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rbp-90]
xor       edx,edx
mov       [rcx+20],edx
lea       rcx,[r14+8]
mov       rdx,[rbp-90]
call      CORINFO_HELP_ASSIGN_REF
mov       edi,[rbp-3C]
lea       rcx,[r14+68]
mov       rdx,[rbp-48]
call      CORINFO_HELP_ASSIGN_REF
mov       ecx,[rbp-40]
mov       [r14+70],ecx
mov       ecx,[rbp-3C]
mov       [r14+74],ecx
mov       ecx,9
mov       edx,20
test      byte ptr [r14+74],8
cmove     ecx,edx
mov       [r14+3B],cl
mov       ecx,edi
and       ecx,7F0
sar       ecx,4
je        short M03_L01
xor       edx,edx
cmp       ecx,2
cmovne    edx,ecx
jmp       short M03_L02
M03_L01
 
mov       edx,2
M03_L02
 
mov       [r14+2C],edx
test      dil,4
jne       near ptr M03_L13
mov       rdi,219FD631C08
M03_L03
 
mov       ecx,[rdi+8]
mov       [r14+30],ecx
cmp       dword ptr [r14+70],0
je        near ptr M03_L14
M03_L04
 
mov       [rbp-88],r14
mov       rcx,rbx
mov       rdx,r14
mov       r8,rsi
xor       r9d,r9d
call      qword ptr [7FF9F636D1E8]; System.Text.Json.Serialization.Metadata.JsonTypeInfo`1[[System.__Canon, System.Private.CoreLib]].Serialize(System.Text.Json.Utf8JsonWriter, System.__Canon ByRef, System.Object)
mov       rcx,[rbp-90]
mov       rcx,[rcx+10]
mov       rax,[rbp-90]
mov       r15d,[rax+20]
test      rcx,rcx
je        short M03_L08
cmp       [rcx+8],r15d
jb        short M03_L07
M03_L05
 
xor       r13d,r13d
xor       r12d,r12d
test      rcx,rcx
je        short M03_L10
mov       rax,[rcx]
test      dword ptr [rax],80000000
je        short M03_L09
lea       r13,[rcx+10]
mov       r12d,[rcx+8]
M03_L06
 
cmp       r15d,r12d
ja        short M03_L07
mov       r12d,r15d
jmp       short M03_L10
M03_L07
 
call      qword ptr [7FF9F604E9D0]
int       3
M03_L08
 
test      r15d,r15d
jne       short M03_L07
xor       ecx,ecx
xor       r15d,r15d
jmp       short M03_L05
M03_L09
 
lea       rdx,[rbp-58]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+28]
mov       r13,[rbp-58]
mov       r12d,[rbp-50]
jmp       short M03_L06
M03_L10
 
mov       rcx,r13
mov       [rbp-80],rcx
mov       [rbp-78],r12d
lea       rcx,[rbp-80]
call      qword ptr [7FF9F636E718]; System.Text.Json.JsonReaderHelper.TranscodeHelper(System.ReadOnlySpan`1)
mov       [rbp-98],rax
mov       rcx,rsp
call      M03_L16
nop
mov       rax,[rbp-98]
add       rsp,88
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M03_L11
 
mov       ecx,3
call      CORINFO_HELP_GETSHARED_GCTHREADSTATIC_BASE_NOCTOR_OPTIMIZED
mov       r14,[rax]
test      r14,r14
jne       near ptr M03_L00
M03_L12
 
mov       rcx,offset MT_System.Text.Json.Utf8JsonWriterCache+ThreadLocalState
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
call      qword ptr [7FF9F678E028]; System.Text.Json.Utf8JsonWriterCache+ThreadLocalState..ctor()
mov       ecx,3
call      CORINFO_HELP_GETSHARED_GCTHREADSTATIC_BASE_NOCTOR_OPTIMIZED
mov       rcx,rax
mov       rdx,r14
call      CORINFO_HELP_ASSIGN_REF
jmp       near ptr M03_L00
M03_L13
 
mov       rcx,7FF9F6314D40
mov       edx,69
call      CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
mov       rcx,1D96B80D9D8
mov       rdi,[rcx]
jmp       near ptr M03_L03
M03_L14
 
lea       rcx,[r14+68]
mov       edx,3E8
call      qword ptr [7FF9F66C7A20]; System.Text.Json.JsonWriterOptions.set_MaxDepth(Int32)
jmp       near ptr M03_L04
M03_L15
 
mov       rcx,offset MT_System.Text.Json.PooledByteBufferWriter
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       edx,edi
call      qword ptr [7FF9F6737DB0]
mov       [rbp-90],r14
mov       rcx,offset MT_System.Text.Json.Utf8JsonWriter
call      CORINFO_HELP_NEWSFAST
mov       r13,rax
mov       rdx,r14
vmovdqu   xmm0,xmmword ptr [rbp-48]
vmovdqu   xmmword ptr [rbp-70],xmm0
mov       rcx,r13
lea       r8,[rbp-70]
call      qword ptr [7FF9F66CC0D8]
mov       r14,r13
jmp       near ptr M03_L04
M03_L16
 
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,28
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+0C0]
mov       r14,[rbp-90]
mov       rcx,gs:[58]
mov       rcx,[rcx+30]
cmp       dword ptr [rcx+190],3
jl        short M03_L17
mov       rcx,[rcx+198]
mov       rcx,[rcx+18]
test      rcx,rcx
jne       short M03_L18
M03_L17
 
mov       ecx,3
call      CORINFO_HELP_GETSHARED_GCTHREADSTATIC_BASE_NOCTOR_OPTIMIZED
jmp       short M03_L19
M03_L18
 
mov       rax,[rcx]
add       rax,10
M03_L19
 
mov       r15,[rax]
xor       ecx,ecx
mov       r12,[rbp-88]
mov       [r12+34],ecx
mov       [r12+20],rcx
mov       [r12+40],rcx
mov       [r12+48],rcx
mov       byte ptr [r12+38],0
mov       byte ptr [r12+3A],0
mov       byte ptr [r12+39],0
mov       [r12+28],ecx
mov       [r12+50],rcx
mov       [r12+58],rcx
mov       [r12+60],rcx
mov       [r12+10],rcx
mov       [r12+18],rcx
mov       [r12+8],rcx
mov       rcx,[rbp-90]
mov       rcx,[rcx+10]
mov       rdx,[rbp-90]
mov       r8d,[rdx+20]
test      rcx,rcx
jne       short M03_L20
test      r8d,r8d
jne       short M03_L21
xor       ecx,ecx
xor       r8d,r8d
jmp       short M03_L23
M03_L20
 
cmp       [rcx+8],r8d
jae       short M03_L22
M03_L21
 
call      qword ptr [7FF9F604E9D0]
int       3
M03_L22
 
add       rcx,10
M03_L23
 
mov       edx,r8d
mov       [rbp-60],rdx
test      rdx,rdx
je        short M03_L25
cmp       rdx,300
ja        short M03_L24
xor       edx,edx
mov       r8d,[rbp-60]
call      CORINFO_HELP_MEMSET
jmp       short M03_L25
M03_L24
 
call      qword ptr [7FF9F5E95BA8]; System.Buffer._ZeroMemory(Byte ByRef, UIntPtr)
M03_L25
 
xor       ecx,ecx
mov       [r14+20],ecx
mov       rdx,[r14+10]
mov       [r14+10],rcx
mov       rcx,1D96F801F20
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65E4030]; System.Buffers.SharedArrayPool`1[[System.Byte, System.Private.CoreLib]].Return(Byte[], Boolean)
dec       dword ptr [r15+18]
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Trim()
push      rsi
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,[rbx+8]
test      esi,esi
je        short M04_L03
movzx     ecx,word ptr [rbx+0C]
cmp       ecx,100
jae       short M04_L00
mov       ecx,ecx
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       short M04_L04
jmp       short M04_L01
M04_L00
 
call      qword ptr [7FF9F673E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       short M04_L04
M04_L01
 
dec       esi
mov       ecx,esi
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L02
mov       ecx,ecx
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       short M04_L04
jmp       short M04_L03
M04_L02
 
call      qword ptr [7FF9F673E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       short M04_L04
M04_L03
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rsi
ret
M04_L04
 
mov       rcx,rbx
mov       edx,3
call      qword ptr [7FF9F5DE73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
nop
add       rsp,28
pop       rbx
pop       rsi
ret
 
DotNetTips.Spargine.Core.Serialization.JsonSerialization.Deserialize[[System.__Canon, System.Private.CoreLib]](System.String)
push      rsi
push      rbx
sub       rsp,58
vzeroupper
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
mov       [rsp+50],rcx
mov       rsi,rcx
mov       rbx,rdx
mov       rcx,rbx
test      rcx,rcx
je        short M05_L00
mov       eax,[rcx+8]
xor       edx,edx
test      eax,eax
sete      dl
test      edx,edx
sete      dl
movzx     edx,dl
test      eax,eax
jne       short M05_L01
jmp       short M05_L01
M05_L00
 
xor       edx,edx
M05_L01
 
test      edx,edx
je        near ptr M05_L10
cmp       [rcx],ecx
call      qword ptr [7FF9F5DE7318]; System.String.Trim()
mov       rbx,rax
mov       rcx,[rsi+10]
mov       rcx,[rcx+10]
test      rcx,rcx
je        short M05_L03
M05_L02
 
mov       r8,1D96B80BD90
mov       r8,[r8]
mov       rdx,rbx
call      qword ptr [7FF9F67DE640]; System.Text.Json.JsonSerializer.Deserialize[[System.__Canon, System.Private.CoreLib]](System.String, System.Text.Json.JsonSerializerOptions)
test      rax,rax
je        near ptr M05_L12
add       rsp,58
pop       rbx
pop       rsi
ret
M05_L03
 
mov       rcx,rsi
mov       rdx,7FF9F67EC778
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
jmp       short M05_L02
M05_L04
 
lea       rcx,[rsp+28]
mov       rdx,219FD6480F8
call      qword ptr [7FF9F5FD58F0]
M05_L05
 
mov       rcx,[rsi+10]
mov       rcx,[rcx]
call      CORINFO_HELP_TYPEHANDLE_TO_RUNTIMETYPE
mov       r8,rax
lea       rcx,[rsp+28]
mov       rdx,offset MD_System.Runtime.CompilerServices.DefaultInterpolatedStringHandler.AppendFormatted[[System.Type, System.Private.CoreLib]](System.Type)
call      qword ptr [7FF9F622E100]; System.Runtime.CompilerServices.DefaultInterpolatedStringHandler.AppendFormatted[[System.__Canon, System.Private.CoreLib]](System.__Canon)
mov       ebx,[rsp+38]
cmp       ebx,[rsp+48]
jbe       short M05_L07
M05_L06
 
call      qword ptr [7FF9F604E9D0]
int       3
M05_L07
 
mov       rcx,[rsp+40]
mov       edx,ebx
lea       rcx,[rcx+rdx*2]
mov       edx,[rsp+48]
sub       edx,ebx
cmp       edx,1
jb        short M05_L08
mov       rdx,219FD630C54
movzx     eax,word ptr [rdx]
mov       [rcx],ax
mov       ecx,[rsp+38]
inc       ecx
mov       [rsp+38],ecx
jmp       short M05_L09
M05_L08
 
lea       rcx,[rsp+28]
mov       rdx,219FD630C48
call      qword ptr [7FF9F5FD58F0]
M05_L09
 
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
lea       rcx,[rsp+28]
call      qword ptr [7FF9F5FD5740]; System.Runtime.CompilerServices.DefaultInterpolatedStringHandler.ToStringAndClear()
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F6076718]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M05_L10
 
call      qword ptr [7FF9F6365368]
mov       rsi,rax
test      rsi,rsi
jne       short M05_L11
call      qword ptr [7FF9F63650B0]
mov       rsi,rax
M05_L11
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,219FD6448E8
mov       r8,rsi
call      qword ptr [7FF9F6076670]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M05_L12
 
lea       rcx,[rsp+28]
mov       edx,2A
mov       r8d,1
call      qword ptr [7FF9F5FD56B0]; System.Runtime.CompilerServices.DefaultInterpolatedStringHandler..ctor(Int32, Int32)
mov       ecx,[rsp+38]
cmp       ecx,[rsp+48]
ja        near ptr M05_L06
mov       rdx,[rsp+40]
mov       eax,ecx
lea       rdx,[rdx+rax*2]
mov       eax,[rsp+48]
sub       eax,ecx
cmp       eax,29
jb        near ptr M05_L04
mov       rcx,219FD648104
vmovdqu   ymm0,ymmword ptr [rcx]
vmovdqu   ymm1,ymmword ptr [rcx+20]
vmovdqu   ymm2,ymmword ptr [rcx+32]
vmovdqu   ymmword ptr [rdx],ymm0
vmovdqu   ymmword ptr [rdx+20],ymm1
vmovdqu   ymmword ptr [rdx+32],ymm2
mov       ecx,[rsp+38]
add       ecx,29
mov       [rsp+38],ecx
jmp       near ptr M05_L05
 
System.Text.RegularExpressions.Regex.get_RegexReplacementWeakReference()
push      rdi
push      rsi
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rax,[rbx+30]
test      rax,rax
je        short M06_L01
M06_L00
 
add       rsp,20
pop       rbx
pop       rsi
pop       rdi
ret
M06_L01
 
lea       rsi,[rbx+30]
mov       rcx,offset MT_System.WeakReference`1[[System.Text.RegularExpressions.RegexReplacement, System.Text.RegularExpressions]]
call      CORINFO_HELP_NEWFAST
mov       rdi,rax
mov       rcx,rdi
xor       edx,edx
xor       r8d,r8d
call      qword ptr [7FF9F5E9D098]; System.WeakReference`1[[System.__Canon, System.Private.CoreLib]].Create(System.__Canon, Boolean)
mov       rcx,rsi
mov       rdx,rdi
xor       r8d,r8d
call      System.Threading.Interlocked.CompareExchange(System.Object ByRef, System.Object, System.Object)
test      rax,rax
jne       short M06_L00
mov       rax,[rbx+30]
jmp       short M06_L00
 
System.Text.RegularExpressions.RegexReplacement.GetOrCreate(System.WeakReference`1, System.String, System.Collections.Hashtable, Int32, System.Collections.Hashtable, System.Text.RegularExpressions.RegexOptions)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,rdx
mov       rdi,r8
mov       ebp,r9d
mov       rcx,[rbx+8]
and       rcx,0FFFFFFFFFFFFFFFE
je        short M07_L02
test      cl,2
jne       short M07_L03
mov       r14,[rcx]
M07_L00
 
test      r14,r14
je        short M07_L05
mov       r15,[r14+18]
cmp       [r15],r15b
cmp       r15,rsi
jne       short M07_L04
M07_L01
 
mov       rax,r14
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M07_L02
 
xor       r14d,r14d
jmp       short M07_L00
M07_L03
 
and       rcx,0FFFFFFFFFFFFFFFC
mov       rcx,[rcx]
cmp       [rcx],ecx
call      qword ptr [7FF9F6A761D8]
mov       r14,rax
jmp       short M07_L00
M07_L04
 
test      rsi,rsi
je        short M07_L05
mov       r8d,[r15+8]
cmp       r8d,[rsi+8]
jne       short M07_L05
lea       rcx,[r15+0C]
mov       r8d,[r15+8]
add       r8d,r8d
lea       rdx,[rsi+0C]
call      qword ptr [7FF9F5E95068]; System.SpanHelpers.SequenceEqual(Byte ByRef, Byte ByRef, UIntPtr)
test      eax,eax
jne       short M07_L01
M07_L05
 
mov       r14,[rsp+80]
mov       [rsp+20],r14
mov       rcx,rsi
mov       edx,[rsp+88]
mov       r8,rdi
mov       r9d,ebp
call      qword ptr [7FF9F68C4048]; System.Text.RegularExpressions.RegexParser.ParseReplacement(System.String, System.Text.RegularExpressions.RegexOptions, System.Collections.Hashtable, Int32, System.Collections.Hashtable)
mov       r14,rax
mov       rcx,rbx
mov       rdx,r14
call      qword ptr [7FF9F5E9D0B0]; System.WeakReference`1[[System.__Canon, System.Private.CoreLib]].SetTarget(System.__Canon)
jmp       near ptr M07_L01
 
System.Text.RegularExpressions.RegexReplacement.Replace(System.Text.RegularExpressions.Regex, System.String, Int32, Int32)
sub       rsp,28
mov       eax,[rsp+50]
cmp       r9d,0FFFFFFFF
jl        short M08_L01
cmp       [r8+8],eax
jb        short M08_L02
test      r9d,r9d
je        short M08_L03
test      byte ptr [rdx+40],40
je        short M08_L04
M08_L00
 
mov       [rsp+50],eax
add       rsp,28
jmp       qword ptr [7FF9F68AF6D8]; System.Text.RegularExpressions.RegexReplacement.ReplaceNonSimpleText(System.Text.RegularExpressions.Regex, System.String, Int32, Int32)
M08_L01
 
mov       ecx,3
mov       edx,1
call      qword ptr [7FF9F6A76100]
int       3
M08_L02
 
mov       ecx,0E
xor       edx,edx
call      qword ptr [7FF9F6A76100]
int       3
M08_L03
 
mov       rax,r8
add       rsp,28
ret
M08_L04
 
cmp       byte ptr [rcx+20],0
jne       short M08_L00
mov       r10,[rcx+10]
cmp       dword ptr [r10+8],0
jne       short M08_L05
mov       rcx,rdx
mov       r10,219FD630008
jmp       short M08_L06
M08_L05
 
mov       r10,[rcx+8]
cmp       dword ptr [r10+8],0
jbe       short M08_L07
mov       r10,[r10+10]
mov       rcx,rdx
M08_L06
 
mov       [rsp+50],eax
mov       rdx,r8
mov       r8,r10
add       rsp,28
jmp       qword ptr [7FF9F68AF6C0]
M08_L07
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M09_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M09_L02
test      rbx,rbx
je        short M09_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M09_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M09_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FF9F5E95B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FF9F5E95B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M09_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M09_L01
 
call      qword ptr [7FF9F604EF40]
int       3
M09_L02
 
test      rbx,rbx
je        short M09_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M09_L04
M09_L03
 
mov       rax,219FD630008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M09_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 
System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
push      rdi
push      rsi
push      rbx
sub       rsp,20
mov       rsi,rcx
mov       rbx,rdx
mov       rdi,[rbx]
M10_L00
 
mov       rdi,[rdi+10]
cmp       rdi,rsi
jne       short M10_L02
M10_L01
 
mov       rcx,7FF9F691E8DC
call      CORINFO_HELP_COUNTPROFILE32
mov       rax,rbx
add       rsp,20
pop       rbx
pop       rsi
pop       rdi
ret
M10_L02
 
test      rdi,rdi
je        near ptr M10_L08
mov       rdi,[rdi+10]
cmp       rdi,rsi
jne       short M10_L03
mov       rcx,7FF9F691E8D8
call      CORINFO_HELP_COUNTPROFILE32
jmp       short M10_L01
M10_L03
 
test      rdi,rdi
je        short M10_L04
mov       rdi,[rdi+10]
cmp       rdi,rsi
jne       short M10_L05
mov       rcx,7FF9F691E8D0
call      CORINFO_HELP_COUNTPROFILE32
jmp       short M10_L01
M10_L04
 
mov       rcx,7FF9F691E8D4
call      CORINFO_HELP_COUNTPROFILE32
jmp       short M10_L08
M10_L05
 
test      rdi,rdi
je        short M10_L07
mov       rdi,[rdi+10]
cmp       rdi,rsi
je        short M10_L06
test      rdi,rdi
je        short M10_L09
mov       rcx,7FF9F691E8C4
call      CORINFO_HELP_COUNTPROFILE32
jmp       near ptr M10_L00
M10_L06
 
mov       rcx,7FF9F691E8C8
call      CORINFO_HELP_COUNTPROFILE32
jmp       near ptr M10_L01
M10_L07
 
mov       rcx,7FF9F691E8CC
call      CORINFO_HELP_COUNTPROFILE32
M10_L08
 
mov       rcx,7FF9F691E8E0
call      CORINFO_HELP_COUNTPROFILE32
mov       rcx,rsi
mov       rdx,rbx
add       rsp,20
pop       rbx
pop       rsi
pop       rdi
jmp       qword ptr [7FF9F5DE43A8]
M10_L09
 
mov       rcx,7FF9F691E8C0
call      CORINFO_HELP_COUNTPROFILE32
jmp       short M10_L08
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.RemoveCRLF01()
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,40
xor       eax,eax
mov       [rsp+38],rax
mov       [rsp+30],rax
mov       rbx,rcx
mov       rcx,[rbx+298]
test      rcx,rcx
je        near ptr M00_L07
mov       [rsp+38],rcx
mov       rcx,1F02B00CF20
mov       rsi,[rcx]
cmp       byte ptr [rsi+9E],0
jne       short M00_L00
mov       rcx,rsi
call      qword ptr [7FF9F62E6A48]; System.Text.Json.JsonSerializerOptions.ConfigureForJsonSerializer()
M00_L00
 
mov       rcx,rsi
call      qword ptr [7FF9F62E6358]; System.Text.Json.JsonSerializerOptions.get_ObjectTypeInfo()
mov       r8,rax
test      r8,r8
jne       short M00_L02
M00_L01
 
lea       rdx,[rsp+38]
mov       rcx,offset MD_System.Text.Json.JsonSerializer.WriteString[[System.Object, System.Private.CoreLib]](System.Object ByRef, System.Text.Json.Serialization.Metadata.JsonTypeInfo`1)
call      qword ptr [7FF9F676D200]; System.Text.Json.JsonSerializer.WriteString[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef, System.Text.Json.Serialization.Metadata.JsonTypeInfo`1)
test      rax,rax
je        short M00_L03
mov       ecx,[rax+8]
xor       edx,edx
test      ecx,ecx
sete      dl
test      edx,edx
sete      dl
movzx     edx,dl
test      ecx,ecx
jne       short M00_L04
jmp       short M00_L04
M00_L02
 
mov       rcx,offset MT_System.Text.Json.Serialization.Metadata.JsonTypeInfo`1[[System.Object, System.Private.CoreLib]]
cmp       [r8],rcx
jne       near ptr M00_L08
jmp       short M00_L01
M00_L03
 
xor       edx,edx
M00_L04
 
test      edx,edx
je        near ptr M00_L09
mov       rcx,rax
cmp       [rcx],ecx
call      qword ptr [7FF9F5DC7318]; System.String.Trim()
mov       rdx,rax
mov       rcx,offset MD_DotNetTips.Spargine.Core.Serialization.JsonSerialization.Deserialize[[System.String, System.Private.CoreLib]](System.String)
call      qword ptr [7FF9F67BE5E0]; DotNetTips.Spargine.Core.Serialization.JsonSerialization.Deserialize[[System.__Canon, System.Private.CoreLib]](System.String)
mov       rsi,rax
test      rsi,rsi
je        near ptr M00_L12
mov       rcx,1F02B00BC70
mov       rdi,[rcx]
mov       rbp,rsi
test      byte ptr [rdi+40],40
je        near ptr M00_L11
mov       r14d,[rsi+8]
M00_L05
 
mov       rcx,rdi
call      qword ptr [7FF9F620D830]; System.Text.RegularExpressions.Regex.get_RegexReplacementWeakReference()
mov       rcx,rax
mov       r8,[rdi+20]
mov       [rsp+20],r8
mov       r8d,[rdi+40]
mov       [rsp+28],r8d
mov       r8,[rdi+18]
mov       r9d,[rdi+44]
mov       rdx,230BCCD0008
call      qword ptr [7FF9F688F648]; System.Text.RegularExpressions.RegexReplacement.GetOrCreate(System.WeakReference`1, System.String, System.Collections.Hashtable, Int32, System.Collections.Hashtable, System.Text.RegularExpressions.RegexOptions)
mov       rcx,rax
mov       [rsp+20],r14d
mov       rdx,rdi
mov       r8,rsi
mov       r9d,0FFFFFFFF
cmp       [rcx],ecx
call      qword ptr [7FF9F688F6A8]; System.Text.RegularExpressions.RegexReplacement.Replace(System.Text.RegularExpressions.Regex, System.String, Int32, Int32)
M00_L06
 
mov       [rsp+30],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+30]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,40
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
ret
M00_L07
 
call      qword ptr [7FF9F63452C0]
mov       ecx,7D9
mov       rdx,7FF9F62C3C60
call      CORINFO_HELP_STRCNS
mov       rbp,rax
mov       ecx,1446
mov       rdx,7FF9F6155A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbp
call      qword ptr [7FF9F5DC6B08]; System.String.Concat(System.String, System.String)
mov       r14,rax
mov       ecx,1
mov       rdx,7FF9F62C3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,r14
call      qword ptr [7FF9F5DC6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63450B0]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FF9F6056670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L08
 
mov       rdx,rax
call      qword ptr [7FF9F5DC43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M00_L09
 
call      qword ptr [7FF9F6345368]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L10
call      qword ptr [7FF9F63450B0]
mov       rbx,rax
M00_L10
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,230BCCE48E8
mov       r8,rbx
call      qword ptr [7FF9F6056670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L11
 
mov       rsi,rbp
xor       r14d,r14d
jmp       near ptr M00_L05
M00_L12
 
xor       eax,eax
jmp       near ptr M00_L06
 
System.Text.Json.JsonSerializerOptions.ConfigureForJsonSerializer()
M01_L00
 
push      rbp
sub       rsp,80
vzeroupper
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
mov       rax,0FFFFFFFFFFFFFFA0
M01_L01
 
vmovdqa   xmmword ptr [rax+rbp],xmm4
vmovdqa   xmmword ptr [rbp+rax+10],xmm4
vmovdqa   xmmword ptr [rbp+rax+20],xmm4
add       rax,30
jne       short M01_L01
mov       [rbp+10],rcx
call      qword ptr [7FF9F62E7780]; System.Text.Json.JsonSerializer.get_IsReflectionEnabledByDefault()
test      eax,eax
je        near ptr M01_L05
call      qword ptr [7FF9F634DA40]; System.Text.Json.Serialization.Metadata.DefaultJsonTypeInfoResolver.get_DefaultInstance()
mov       [rbp-18],rax
mov       rdx,[rbp+10]
mov       rdx,[rdx+20]
mov       [rbp-30],rdx
cmp       qword ptr [rbp-30],0
je        short M01_L02
mov       rdx,[rbp-30]
mov       rcx,offset MT_System.Text.Json.Serialization.JsonSerializerContext
call      qword ptr [7FF9F5DC4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       [rbp-28],rax
cmp       qword ptr [rbp-28],0
jne       short M01_L03
jmp       near ptr M01_L09
M01_L02
 
mov       rcx,[rbp+10]
lea       rcx,[rcx+20]
mov       rdx,[rbp-18]
call      CORINFO_HELP_ASSIGN_REF
jmp       near ptr M01_L09
M01_L03
 
call      qword ptr [7FF9F62E7180]
test      eax,eax
je        near ptr M01_L09
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rbp-10],xmm0
lea       rdx,[rbp-10]
mov       rcx,offset MD_.InlineArrayElementRef[[<>y__InlineArray2`1[[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]], System.Text.Json],[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]](<>y__InlineArray2`1 ByRef, Int32)
xor       r8d,r8d
call      qword ptr [7FF9F634DC50]
mov       rdx,[rbp-28]
mov       rcx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rdx,[rbp-10]
mov       rcx,offset MD_.InlineArrayElementRef[[<>y__InlineArray2`1[[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]], System.Text.Json],[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]](<>y__InlineArray2`1 ByRef, Int32)
mov       r8d,1
call      qword ptr [7FF9F634DC50]
mov       rdx,[rbp-18]
mov       rcx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rbp-48]
lea       r8,[rbp-10]
mov       rdx,offset MD_.InlineArrayAsReadOnlySpan[[<>y__InlineArray2`1[[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]], System.Text.Json],[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]](<>y__InlineArray2`1 ByRef, Int32)
mov       r9d,2
call      qword ptr [7FF9F634DC80]
mov       rcx,[rbp+10]
lea       rcx,[rcx+60]
mov       [rbp-60],rcx
vmovdqu   xmm0,xmmword ptr [rbp-48]
vmovdqu   xmmword ptr [rbp-58],xmm0
lea       rcx,[rbp-58]
call      qword ptr [7FF9F634DCC8]
mov       rcx,[rbp-60]
mov       rdx,rax
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rbp+10]
mov       rcx,[rcx+8]
mov       [rbp-20],rcx
cmp       qword ptr [rbp-20],0
je        near ptr M01_L09
mov       rcx,[rbp-20]
cmp       [rcx],ecx
call      qword ptr [7FF9F634DAE8]; System.Text.Json.JsonSerializerOptions+CachingContext.get_Options()
cmp       rax,[rbp+10]
je        short M01_L04
mov       rcx,[rbp-20]
cmp       [rcx],ecx
call      qword ptr [7FF9F634DAE8]; System.Text.Json.JsonSerializerOptions+CachingContext.get_Options()
movzx     ecx,byte ptr [rax+9E]
test      ecx,ecx
jne       short M01_L04
mov       rcx,[rbp-20]
cmp       [rcx],ecx
call      qword ptr [7FF9F634DAE8]; System.Text.Json.JsonSerializerOptions+CachingContext.get_Options()
mov       rcx,rax
cmp       [rcx],ecx
call      qword ptr [7FF9F62E6A48]
jmp       short M01_L09
M01_L04
 
mov       rcx,[rbp-20]
cmp       [rcx],ecx
call      qword ptr [7FF9F634DB60]
jmp       short M01_L09
M01_L05
 
mov       rdx,[rbp+10]
mov       rdx,[rdx+20]
mov       [rbp-30],rdx
cmp       qword ptr [rbp-30],0
je        short M01_L06
mov       rdx,[rbp-30]
mov       rcx,offset MT_System.Text.Json.Serialization.Metadata.EmptyJsonTypeInfoResolver
call      qword ptr [7FF9F5DC4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
test      rax,rax
je        short M01_L07
M01_L06
 
mov       dword ptr [rbp-34],1
jmp       short M01_L08
M01_L07
 
xor       eax,eax
mov       [rbp-34],eax
M01_L08
 
cmp       dword ptr [rbp-34],0
je        short M01_L09
call      qword ptr [7FF9F62ED098]
M01_L09
 
mov       rax,[rbp+10]
mov       byte ptr [rax+9D],1
mov       rax,[rbp+10]
mov       byte ptr [rax+9E],1
add       rsp,80
pop       rbp
ret
 
System.Text.Json.JsonSerializerOptions.get_ObjectTypeInfo()
push      rsi
push      rbx
sub       rsp,38
mov       rbx,rcx
mov       rax,[rbx+18]
test      rax,rax
je        short M02_L01
M02_L00
 
add       rsp,38
pop       rbx
pop       rsi
ret
M02_L01
 
mov       byte ptr [rsp+30],1
mov       byte ptr [rsp+31],1
xor       ecx,ecx
mov       [rsp+20],ecx
mov       [rsp+28],ecx
mov       rcx,rbx
movzx     r9d,word ptr [rsp+30]
mov       rdx,230BCCD2D10
mov       r8d,1
call      qword ptr [7FF9F62E62F8]; System.Text.Json.JsonSerializerOptions.GetTypeInfoInternal(System.Type, Boolean, System.Nullable`1, Boolean, Boolean)
mov       rsi,rax
lea       rcx,[rbx+18]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rax,rsi
jmp       short M02_L00
 
System.Text.Json.JsonSerializer.WriteString[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef, System.Text.Json.Serialization.Metadata.JsonTypeInfo`1)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,88
vzeroupper
lea       rbp,[rsp+0C0]
xor       eax,eax
mov       [rbp-98],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-90],xmm4
vmovdqa   xmmword ptr [rbp-80],xmm4
vmovdqa   xmmword ptr [rbp-70],xmm4
vmovdqa   xmmword ptr [rbp-60],xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
mov       [rbp-40],rax
mov       [rbp-0A0],rsp
mov       rsi,rdx
mov       rbx,r8
mov       rdi,[rbx+0B0]
lea       rdx,[rbp-48]
mov       rcx,rdi
cmp       [rcx],ecx
call      qword ptr [7FF9F62E6AC0]; System.Text.Json.JsonSerializerOptions.GetWriterOptions()
mov       edi,[rdi+7C]
mov       rcx,gs:[58]
mov       rcx,[rcx+30]
cmp       dword ptr [rcx+190],3
jl        near ptr M03_L11
mov       rcx,[rcx+198]
mov       rcx,[rcx+18]
test      rcx,rcx
je        near ptr M03_L11
mov       rax,[rcx]
add       rax,10
mov       r14,[rax]
test      r14,r14
je        near ptr M03_L12
M03_L00
 
mov       ecx,[r14+18]
lea       edx,[rcx+1]
mov       [r14+18],edx
test      ecx,ecx
jne       near ptr M03_L15
mov       rcx,[r14+8]
mov       [rbp-90],rcx
mov       r14,[r14+10]
mov       rcx,[rbp-90]
cmp       [rcx],cl
mov       rcx,1F02F001F20
mov       rcx,[rcx]
mov       edx,edi
call      qword ptr [7FF9F65C4028]; System.Buffers.SharedArrayPool`1[[System.Byte, System.Private.CoreLib]].Rent(Int32)
mov       rcx,[rbp-90]
lea       rcx,[rcx+10]
mov       rdx,rax
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rbp-90]
xor       edx,edx
mov       [rcx+20],edx
lea       rcx,[r14+8]
mov       rdx,[rbp-90]
call      CORINFO_HELP_ASSIGN_REF
mov       edi,[rbp-3C]
lea       rcx,[r14+68]
mov       rdx,[rbp-48]
call      CORINFO_HELP_ASSIGN_REF
mov       ecx,[rbp-40]
mov       [r14+70],ecx
mov       ecx,[rbp-3C]
mov       [r14+74],ecx
mov       ecx,9
mov       edx,20
test      byte ptr [r14+74],8
cmove     ecx,edx
mov       [r14+3B],cl
mov       ecx,edi
and       ecx,7F0
sar       ecx,4
je        short M03_L01
xor       edx,edx
cmp       ecx,2
cmovne    edx,ecx
jmp       short M03_L02
M03_L01
 
mov       edx,2
M03_L02
 
mov       [r14+2C],edx
test      dil,4
jne       near ptr M03_L13
mov       rdi,230BCCD1C08
M03_L03
 
mov       ecx,[rdi+8]
mov       [r14+30],ecx
cmp       dword ptr [r14+70],0
je        near ptr M03_L14
M03_L04
 
mov       [rbp-88],r14
mov       rcx,rbx
mov       rdx,r14
mov       r8,rsi
xor       r9d,r9d
call      qword ptr [7FF9F634D1E8]; System.Text.Json.Serialization.Metadata.JsonTypeInfo`1[[System.__Canon, System.Private.CoreLib]].Serialize(System.Text.Json.Utf8JsonWriter, System.__Canon ByRef, System.Object)
mov       rcx,[rbp-90]
mov       rcx,[rcx+10]
mov       rax,[rbp-90]
mov       r15d,[rax+20]
test      rcx,rcx
je        short M03_L08
cmp       [rcx+8],r15d
jb        short M03_L07
M03_L05
 
xor       r13d,r13d
xor       r12d,r12d
test      rcx,rcx
je        short M03_L10
mov       rax,[rcx]
test      dword ptr [rax],80000000
je        short M03_L09
lea       r13,[rcx+10]
mov       r12d,[rcx+8]
M03_L06
 
cmp       r15d,r12d
ja        short M03_L07
mov       r12d,r15d
jmp       short M03_L10
M03_L07
 
call      qword ptr [7FF9F602E9D0]
int       3
M03_L08
 
test      r15d,r15d
jne       short M03_L07
xor       ecx,ecx
xor       r15d,r15d
jmp       short M03_L05
M03_L09
 
lea       rdx,[rbp-58]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+28]
mov       r13,[rbp-58]
mov       r12d,[rbp-50]
jmp       short M03_L06
M03_L10
 
mov       rcx,r13
mov       [rbp-80],rcx
mov       [rbp-78],r12d
lea       rcx,[rbp-80]
call      qword ptr [7FF9F634E718]; System.Text.Json.JsonReaderHelper.TranscodeHelper(System.ReadOnlySpan`1)
mov       [rbp-98],rax
mov       rcx,rsp
call      M03_L16
nop
mov       rax,[rbp-98]
add       rsp,88
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M03_L11
 
mov       ecx,3
call      CORINFO_HELP_GETSHARED_GCTHREADSTATIC_BASE_NOCTOR_OPTIMIZED
mov       r14,[rax]
test      r14,r14
jne       near ptr M03_L00
M03_L12
 
mov       rcx,offset MT_System.Text.Json.Utf8JsonWriterCache+ThreadLocalState
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
call      qword ptr [7FF9F676E028]; System.Text.Json.Utf8JsonWriterCache+ThreadLocalState..ctor()
mov       ecx,3
call      CORINFO_HELP_GETSHARED_GCTHREADSTATIC_BASE_NOCTOR_OPTIMIZED
mov       rcx,rax
mov       rdx,r14
call      CORINFO_HELP_ASSIGN_REF
jmp       near ptr M03_L00
M03_L13
 
mov       rcx,7FF9F62F4D40
mov       edx,69
call      CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
mov       rcx,1F02B00D9D8
mov       rdi,[rcx]
jmp       near ptr M03_L03
M03_L14
 
lea       rcx,[r14+68]
mov       edx,3E8
call      qword ptr [7FF9F66A7A20]; System.Text.Json.JsonWriterOptions.set_MaxDepth(Int32)
jmp       near ptr M03_L04
M03_L15
 
mov       rcx,offset MT_System.Text.Json.PooledByteBufferWriter
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       edx,edi
call      qword ptr [7FF9F6717DB0]
mov       [rbp-90],r14
mov       rcx,offset MT_System.Text.Json.Utf8JsonWriter
call      CORINFO_HELP_NEWSFAST
mov       r13,rax
mov       rdx,r14
vmovdqu   xmm0,xmmword ptr [rbp-48]
vmovdqu   xmmword ptr [rbp-70],xmm0
mov       rcx,r13
lea       r8,[rbp-70]
call      qword ptr [7FF9F66AC0D8]
mov       r14,r13
jmp       near ptr M03_L04
M03_L16
 
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,28
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+0C0]
mov       r14,[rbp-90]
mov       rcx,gs:[58]
mov       rcx,[rcx+30]
cmp       dword ptr [rcx+190],3
jl        short M03_L17
mov       rcx,[rcx+198]
mov       rcx,[rcx+18]
test      rcx,rcx
jne       short M03_L18
M03_L17
 
mov       ecx,3
call      CORINFO_HELP_GETSHARED_GCTHREADSTATIC_BASE_NOCTOR_OPTIMIZED
jmp       short M03_L19
M03_L18
 
mov       rax,[rcx]
add       rax,10
M03_L19
 
mov       r15,[rax]
xor       ecx,ecx
mov       r12,[rbp-88]
mov       [r12+34],ecx
mov       [r12+20],rcx
mov       [r12+40],rcx
mov       [r12+48],rcx
mov       byte ptr [r12+38],0
mov       byte ptr [r12+3A],0
mov       byte ptr [r12+39],0
mov       [r12+28],ecx
mov       [r12+50],rcx
mov       [r12+58],rcx
mov       [r12+60],rcx
mov       [r12+10],rcx
mov       [r12+18],rcx
mov       [r12+8],rcx
mov       rcx,[rbp-90]
mov       rcx,[rcx+10]
mov       rdx,[rbp-90]
mov       r8d,[rdx+20]
test      rcx,rcx
jne       short M03_L20
test      r8d,r8d
jne       short M03_L21
xor       ecx,ecx
xor       r8d,r8d
jmp       short M03_L23
M03_L20
 
cmp       [rcx+8],r8d
jae       short M03_L22
M03_L21
 
call      qword ptr [7FF9F602E9D0]
int       3
M03_L22
 
add       rcx,10
M03_L23
 
mov       edx,r8d
mov       [rbp-60],rdx
test      rdx,rdx
je        short M03_L25
cmp       rdx,300
ja        short M03_L24
xor       edx,edx
mov       r8d,[rbp-60]
call      CORINFO_HELP_MEMSET
jmp       short M03_L25
M03_L24
 
call      qword ptr [7FF9F5E75BA8]; System.Buffer._ZeroMemory(Byte ByRef, UIntPtr)
M03_L25
 
xor       ecx,ecx
mov       [r14+20],ecx
mov       rdx,[r14+10]
mov       [r14+10],rcx
mov       rcx,1F02F001F20
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65C4030]; System.Buffers.SharedArrayPool`1[[System.Byte, System.Private.CoreLib]].Return(Byte[], Boolean)
dec       dword ptr [r15+18]
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Trim()
push      rsi
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,[rbx+8]
test      esi,esi
je        short M04_L03
movzx     ecx,word ptr [rbx+0C]
cmp       ecx,100
jae       short M04_L00
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       short M04_L04
jmp       short M04_L01
M04_L00
 
call      qword ptr [7FF9F671E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       short M04_L04
M04_L01
 
dec       esi
mov       ecx,esi
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L02
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       short M04_L04
jmp       short M04_L03
M04_L02
 
call      qword ptr [7FF9F671E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       short M04_L04
M04_L03
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rsi
ret
M04_L04
 
mov       rcx,rbx
mov       edx,3
call      qword ptr [7FF9F5DC73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
nop
add       rsp,28
pop       rbx
pop       rsi
ret
 
DotNetTips.Spargine.Core.Serialization.JsonSerialization.Deserialize[[System.__Canon, System.Private.CoreLib]](System.String)
push      rsi
push      rbx
sub       rsp,58
vzeroupper
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
mov       [rsp+50],rcx
mov       rsi,rcx
mov       rbx,rdx
mov       rcx,rbx
test      rcx,rcx
je        short M05_L00
mov       eax,[rcx+8]
xor       edx,edx
test      eax,eax
sete      dl
test      edx,edx
sete      dl
movzx     edx,dl
test      eax,eax
jne       short M05_L01
jmp       short M05_L01
M05_L00
 
xor       edx,edx
M05_L01
 
test      edx,edx
je        near ptr M05_L10
cmp       [rcx],ecx
call      qword ptr [7FF9F5DC7318]; System.String.Trim()
mov       rbx,rax
mov       rcx,[rsi+10]
mov       rcx,[rcx+10]
test      rcx,rcx
je        short M05_L03
M05_L02
 
mov       r8,1F02B00BD90
mov       r8,[r8]
mov       rdx,rbx
call      qword ptr [7FF9F67BE640]; System.Text.Json.JsonSerializer.Deserialize[[System.__Canon, System.Private.CoreLib]](System.String, System.Text.Json.JsonSerializerOptions)
test      rax,rax
je        near ptr M05_L12
add       rsp,58
pop       rbx
pop       rsi
ret
M05_L03
 
mov       rcx,rsi
mov       rdx,7FF9F67CC778
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
jmp       short M05_L02
M05_L04
 
lea       rcx,[rsp+28]
mov       rdx,230BCCE80F8
call      qword ptr [7FF9F5FB58F0]
M05_L05
 
mov       rcx,[rsi+10]
mov       rcx,[rcx]
call      CORINFO_HELP_TYPEHANDLE_TO_RUNTIMETYPE
mov       r8,rax
lea       rcx,[rsp+28]
mov       rdx,offset MD_System.Runtime.CompilerServices.DefaultInterpolatedStringHandler.AppendFormatted[[System.Type, System.Private.CoreLib]](System.Type)
call      qword ptr [7FF9F620E100]; System.Runtime.CompilerServices.DefaultInterpolatedStringHandler.AppendFormatted[[System.__Canon, System.Private.CoreLib]](System.__Canon)
mov       ebx,[rsp+38]
cmp       ebx,[rsp+48]
jbe       short M05_L07
M05_L06
 
call      qword ptr [7FF9F602E9D0]
int       3
M05_L07
 
mov       rcx,[rsp+40]
mov       edx,ebx
lea       rcx,[rcx+rdx*2]
mov       edx,[rsp+48]
sub       edx,ebx
cmp       edx,1
jb        short M05_L08
mov       rdx,230BCCD0C54
movzx     eax,word ptr [rdx]
mov       [rcx],ax
mov       ecx,[rsp+38]
inc       ecx
mov       [rsp+38],ecx
jmp       short M05_L09
M05_L08
 
lea       rcx,[rsp+28]
mov       rdx,230BCCD0C48
call      qword ptr [7FF9F5FB58F0]
M05_L09
 
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
lea       rcx,[rsp+28]
call      qword ptr [7FF9F5FB5740]; System.Runtime.CompilerServices.DefaultInterpolatedStringHandler.ToStringAndClear()
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F6056718]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M05_L10
 
call      qword ptr [7FF9F6345368]
mov       rsi,rax
test      rsi,rsi
jne       short M05_L11
call      qword ptr [7FF9F63450B0]
mov       rsi,rax
M05_L11
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,230BCCE48E8
mov       r8,rsi
call      qword ptr [7FF9F6056670]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M05_L12
 
lea       rcx,[rsp+28]
mov       edx,2A
mov       r8d,1
call      qword ptr [7FF9F5FB56B0]; System.Runtime.CompilerServices.DefaultInterpolatedStringHandler..ctor(Int32, Int32)
mov       ecx,[rsp+38]
cmp       ecx,[rsp+48]
ja        near ptr M05_L06
mov       rdx,[rsp+40]
mov       eax,ecx
lea       rdx,[rdx+rax*2]
mov       eax,[rsp+48]
sub       eax,ecx
cmp       eax,29
jb        near ptr M05_L04
mov       rcx,230BCCE8104
vmovdqu   ymm0,ymmword ptr [rcx]
vmovdqu   ymm1,ymmword ptr [rcx+20]
vmovdqu   ymm2,ymmword ptr [rcx+32]
vmovdqu   ymmword ptr [rdx],ymm0
vmovdqu   ymmword ptr [rdx+20],ymm1
vmovdqu   ymmword ptr [rdx+32],ymm2
mov       ecx,[rsp+38]
add       ecx,29
mov       [rsp+38],ecx
jmp       near ptr M05_L05
 
System.Text.RegularExpressions.Regex.get_RegexReplacementWeakReference()
push      rdi
push      rsi
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rax,[rbx+30]
test      rax,rax
je        short M06_L01
M06_L00
 
add       rsp,20
pop       rbx
pop       rsi
pop       rdi
ret
M06_L01
 
lea       rsi,[rbx+30]
mov       rcx,offset MT_System.WeakReference`1[[System.Text.RegularExpressions.RegexReplacement, System.Text.RegularExpressions]]
call      CORINFO_HELP_NEWFAST
mov       rdi,rax
mov       rcx,rdi
xor       edx,edx
xor       r8d,r8d
call      qword ptr [7FF9F5E7D098]; System.WeakReference`1[[System.__Canon, System.Private.CoreLib]].Create(System.__Canon, Boolean)
mov       rcx,rsi
mov       rdx,rdi
xor       r8d,r8d
call      System.Threading.Interlocked.CompareExchange(System.Object ByRef, System.Object, System.Object)
test      rax,rax
jne       short M06_L00
mov       rax,[rbx+30]
jmp       short M06_L00
 
System.Text.RegularExpressions.RegexReplacement.GetOrCreate(System.WeakReference`1, System.String, System.Collections.Hashtable, Int32, System.Collections.Hashtable, System.Text.RegularExpressions.RegexOptions)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,rdx
mov       rdi,r8
mov       ebp,r9d
mov       rcx,[rbx+8]
and       rcx,0FFFFFFFFFFFFFFFE
je        short M07_L02
test      cl,2
jne       short M07_L03
mov       r14,[rcx]
M07_L00
 
test      r14,r14
je        short M07_L05
mov       r15,[r14+18]
cmp       [r15],r15b
cmp       r15,rsi
jne       short M07_L04
M07_L01
 
mov       rax,r14
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M07_L02
 
xor       r14d,r14d
jmp       short M07_L00
M07_L03
 
and       rcx,0FFFFFFFFFFFFFFFC
mov       rcx,[rcx]
cmp       [rcx],ecx
call      qword ptr [7FF9F6A55188]
mov       r14,rax
jmp       short M07_L00
M07_L04
 
test      rsi,rsi
je        short M07_L05
mov       r8d,[r15+8]
cmp       r8d,[rsi+8]
jne       short M07_L05
lea       rcx,[r15+0C]
mov       r8d,[r15+8]
add       r8d,r8d
lea       rdx,[rsi+0C]
call      qword ptr [7FF9F5E75068]; System.SpanHelpers.SequenceEqual(Byte ByRef, Byte ByRef, UIntPtr)
test      eax,eax
jne       short M07_L01
M07_L05
 
mov       r14,[rsp+80]
mov       [rsp+20],r14
mov       rcx,rsi
mov       edx,[rsp+88]
mov       r8,rdi
mov       r9d,ebp
call      qword ptr [7FF9F68A4048]; System.Text.RegularExpressions.RegexParser.ParseReplacement(System.String, System.Text.RegularExpressions.RegexOptions, System.Collections.Hashtable, Int32, System.Collections.Hashtable)
mov       r14,rax
mov       rcx,rbx
mov       rdx,r14
call      qword ptr [7FF9F5E7D0B0]; System.WeakReference`1[[System.__Canon, System.Private.CoreLib]].SetTarget(System.__Canon)
jmp       near ptr M07_L01
 
System.Text.RegularExpressions.RegexReplacement.Replace(System.Text.RegularExpressions.Regex, System.String, Int32, Int32)
sub       rsp,28
mov       eax,[rsp+50]
cmp       r9d,0FFFFFFFF
jl        short M08_L01
cmp       [r8+8],eax
jb        short M08_L02
test      r9d,r9d
je        short M08_L03
test      byte ptr [rdx+40],40
je        short M08_L04
M08_L00
 
mov       [rsp+50],eax
add       rsp,28
jmp       qword ptr [7FF9F688F6D8]; System.Text.RegularExpressions.RegexReplacement.ReplaceNonSimpleText(System.Text.RegularExpressions.Regex, System.String, Int32, Int32)
M08_L01
 
mov       ecx,3
mov       edx,1
call      qword ptr [7FF9F6A55FE0]
int       3
M08_L02
 
mov       ecx,0E
xor       edx,edx
call      qword ptr [7FF9F6A55FE0]
int       3
M08_L03
 
mov       rax,r8
add       rsp,28
ret
M08_L04
 
cmp       byte ptr [rcx+20],0
jne       short M08_L00
mov       r10,[rcx+10]
cmp       dword ptr [r10+8],0
jne       short M08_L05
mov       rcx,rdx
mov       r10,230BCCD0008
jmp       short M08_L06
M08_L05
 
mov       r10,[rcx+8]
cmp       dword ptr [r10+8],0
jbe       short M08_L07
mov       r10,[r10+10]
mov       rcx,rdx
M08_L06
 
mov       [rsp+50],eax
mov       rdx,r8
mov       r8,r10
add       rsp,28
jmp       qword ptr [7FF9F688F6C0]
M08_L07
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M09_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M09_L02
test      rbx,rbx
je        short M09_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M09_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M09_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FF9F5E75B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FF9F5E75B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M09_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M09_L01
 
call      qword ptr [7FF9F602EF40]
int       3
M09_L02
 
test      rbx,rbx
je        short M09_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M09_L04
M09_L03
 
mov       rax,230BCCD0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M09_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 
System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
push      rdi
push      rsi
push      rbx
sub       rsp,20
mov       rsi,rcx
mov       rbx,rdx
mov       rdi,[rbx]
M10_L00
 
mov       rdi,[rdi+10]
cmp       rdi,rsi
jne       short M10_L02
M10_L01
 
mov       rcx,7FF9F68FE8DC
call      CORINFO_HELP_COUNTPROFILE32
mov       rax,rbx
add       rsp,20
pop       rbx
pop       rsi
pop       rdi
ret
M10_L02
 
test      rdi,rdi
je        near ptr M10_L08
mov       rdi,[rdi+10]
cmp       rdi,rsi
jne       short M10_L03
mov       rcx,7FF9F68FE8D8
call      CORINFO_HELP_COUNTPROFILE32
jmp       short M10_L01
M10_L03
 
test      rdi,rdi
je        short M10_L04
mov       rdi,[rdi+10]
cmp       rdi,rsi
jne       short M10_L05
mov       rcx,7FF9F68FE8D0
call      CORINFO_HELP_COUNTPROFILE32
jmp       short M10_L01
M10_L04
 
mov       rcx,7FF9F68FE8D4
call      CORINFO_HELP_COUNTPROFILE32
jmp       short M10_L08
M10_L05
 
test      rdi,rdi
je        short M10_L07
mov       rdi,[rdi+10]
cmp       rdi,rsi
je        short M10_L06
test      rdi,rdi
je        short M10_L09
mov       rcx,7FF9F68FE8C4
call      CORINFO_HELP_COUNTPROFILE32
jmp       near ptr M10_L00
M10_L06
 
mov       rcx,7FF9F68FE8C8
call      CORINFO_HELP_COUNTPROFILE32
jmp       near ptr M10_L01
M10_L07
 
mov       rcx,7FF9F68FE8CC
call      CORINFO_HELP_COUNTPROFILE32
M10_L08
 
mov       rcx,7FF9F68FE8E0
call      CORINFO_HELP_COUNTPROFILE32
mov       rcx,rsi
mov       rdx,rbx
add       rsp,20
pop       rbx
pop       rsi
pop       rdi
jmp       qword ptr [7FF9F5DC43A8]
M10_L09
 
mov       rcx,7FF9F68FE8C0
call      CORINFO_HELP_COUNTPROFILE32
jmp       short M10_L08
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.RemoveCRLF01()
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,40
xor       eax,eax
mov       [rsp+38],rax
mov       [rsp+30],rax
mov       rbx,rcx
mov       rcx,[rbx+298]
test      rcx,rcx
je        near ptr M00_L07
mov       [rsp+38],rcx
mov       rcx,211C0C0EF18
mov       rsi,[rcx]
cmp       byte ptr [rsi+9E],0
jne       short M00_L00
mov       rcx,rsi
call      qword ptr [7FF9F6306A48]; System.Text.Json.JsonSerializerOptions.ConfigureForJsonSerializer()
M00_L00
 
mov       rcx,rsi
call      qword ptr [7FF9F6306358]; System.Text.Json.JsonSerializerOptions.get_ObjectTypeInfo()
mov       r8,rax
test      r8,r8
jne       short M00_L02
M00_L01
 
lea       rdx,[rsp+38]
mov       rcx,offset MD_System.Text.Json.JsonSerializer.WriteString[[System.Object, System.Private.CoreLib]](System.Object ByRef, System.Text.Json.Serialization.Metadata.JsonTypeInfo`1)
call      qword ptr [7FF9F678D200]; System.Text.Json.JsonSerializer.WriteString[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef, System.Text.Json.Serialization.Metadata.JsonTypeInfo`1)
test      rax,rax
je        short M00_L03
mov       ecx,[rax+8]
xor       edx,edx
test      ecx,ecx
sete      dl
test      edx,edx
sete      dl
movzx     edx,dl
test      ecx,ecx
jne       short M00_L04
jmp       short M00_L04
M00_L02
 
mov       rcx,offset MT_System.Text.Json.Serialization.Metadata.JsonTypeInfo`1[[System.Object, System.Private.CoreLib]]
cmp       [r8],rcx
jne       near ptr M00_L08
jmp       short M00_L01
M00_L03
 
xor       edx,edx
M00_L04
 
test      edx,edx
je        near ptr M00_L09
mov       rcx,rax
cmp       [rcx],ecx
call      qword ptr [7FF9F5DE7318]; System.String.Trim()
mov       rdx,rax
mov       rcx,offset MD_DotNetTips.Spargine.Core.Serialization.JsonSerialization.Deserialize[[System.String, System.Private.CoreLib]](System.String)
call      qword ptr [7FF9F67DE5E0]; DotNetTips.Spargine.Core.Serialization.JsonSerialization.Deserialize[[System.__Canon, System.Private.CoreLib]](System.String)
mov       rsi,rax
test      rsi,rsi
je        near ptr M00_L12
mov       rcx,211C0C0DC68
mov       rdi,[rcx]
mov       rbp,rsi
test      byte ptr [rdi+40],40
je        near ptr M00_L11
mov       r14d,[rsi+8]
M00_L05
 
mov       rcx,rdi
call      qword ptr [7FF9F622D830]; System.Text.RegularExpressions.Regex.get_RegexReplacementWeakReference()
mov       rcx,rax
mov       r8,[rdi+20]
mov       [rsp+20],r8
mov       r8d,[rdi+40]
mov       [rsp+28],r8d
mov       r8,[rdi+18]
mov       r9d,[rdi+44]
mov       rdx,25252900008
call      qword ptr [7FF9F68AF750]; System.Text.RegularExpressions.RegexReplacement.GetOrCreate(System.WeakReference`1, System.String, System.Collections.Hashtable, Int32, System.Collections.Hashtable, System.Text.RegularExpressions.RegexOptions)
mov       rcx,rax
mov       [rsp+20],r14d
mov       rdx,rdi
mov       r8,rsi
mov       r9d,0FFFFFFFF
cmp       [rcx],ecx
call      qword ptr [7FF9F68AF7B0]; System.Text.RegularExpressions.RegexReplacement.Replace(System.Text.RegularExpressions.Regex, System.String, Int32, Int32)
M00_L06
 
mov       [rsp+30],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+30]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,40
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
ret
M00_L07
 
call      qword ptr [7FF9F63652C0]
mov       ecx,7D9
mov       rdx,7FF9F62E3C60
call      CORINFO_HELP_STRCNS
mov       rbp,rax
mov       ecx,1446
mov       rdx,7FF9F6175A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbp
call      qword ptr [7FF9F5DE6B08]; System.String.Concat(System.String, System.String)
mov       r14,rax
mov       ecx,1
mov       rdx,7FF9F62E3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,r14
call      qword ptr [7FF9F5DE6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63650B0]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FF9F6076670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L08
 
mov       rdx,rax
call      qword ptr [7FF9F5DE43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
int       3
M00_L09
 
call      qword ptr [7FF9F6365368]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L10
call      qword ptr [7FF9F63650B0]
mov       rbx,rax
M00_L10
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,252529148E8
mov       r8,rbx
call      qword ptr [7FF9F6076670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L11
 
mov       rsi,rbp
xor       r14d,r14d
jmp       near ptr M00_L05
M00_L12
 
xor       eax,eax
jmp       near ptr M00_L06
 
System.Text.Json.JsonSerializerOptions.ConfigureForJsonSerializer()
M01_L00
 
push      rbp
sub       rsp,80
vzeroupper
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
mov       rax,0FFFFFFFFFFFFFFA0
M01_L01
 
vmovdqa   xmmword ptr [rax+rbp],xmm4
vmovdqa   xmmword ptr [rbp+rax+10],xmm4
vmovdqa   xmmword ptr [rbp+rax+20],xmm4
add       rax,30
jne       short M01_L01
mov       [rbp+10],rcx
call      qword ptr [7FF9F6307780]; System.Text.Json.JsonSerializer.get_IsReflectionEnabledByDefault()
test      eax,eax
je        near ptr M01_L05
call      qword ptr [7FF9F636DA40]; System.Text.Json.Serialization.Metadata.DefaultJsonTypeInfoResolver.get_DefaultInstance()
mov       [rbp-18],rax
mov       rdx,[rbp+10]
mov       rdx,[rdx+20]
mov       [rbp-30],rdx
cmp       qword ptr [rbp-30],0
je        short M01_L02
mov       rdx,[rbp-30]
mov       rcx,offset MT_System.Text.Json.Serialization.JsonSerializerContext
call      qword ptr [7FF9F5DE4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       [rbp-28],rax
cmp       qword ptr [rbp-28],0
jne       short M01_L03
jmp       near ptr M01_L09
M01_L02
 
mov       rcx,[rbp+10]
lea       rcx,[rcx+20]
mov       rdx,[rbp-18]
call      CORINFO_HELP_ASSIGN_REF
jmp       near ptr M01_L09
M01_L03
 
call      qword ptr [7FF9F6307180]
test      eax,eax
je        near ptr M01_L09
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rbp-10],xmm0
lea       rdx,[rbp-10]
mov       rcx,offset MD_.InlineArrayElementRef[[<>y__InlineArray2`1[[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]], System.Text.Json],[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]](<>y__InlineArray2`1 ByRef, Int32)
xor       r8d,r8d
call      qword ptr [7FF9F636DC50]
mov       rdx,[rbp-28]
mov       rcx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rdx,[rbp-10]
mov       rcx,offset MD_.InlineArrayElementRef[[<>y__InlineArray2`1[[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]], System.Text.Json],[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]](<>y__InlineArray2`1 ByRef, Int32)
mov       r8d,1
call      qword ptr [7FF9F636DC50]
mov       rdx,[rbp-18]
mov       rcx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rbp-48]
lea       r8,[rbp-10]
mov       rdx,offset MD_.InlineArrayAsReadOnlySpan[[<>y__InlineArray2`1[[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]], System.Text.Json],[System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver, System.Text.Json]](<>y__InlineArray2`1 ByRef, Int32)
mov       r9d,2
call      qword ptr [7FF9F636DC80]
mov       rcx,[rbp+10]
lea       rcx,[rcx+60]
mov       [rbp-60],rcx
vmovdqu   xmm0,xmmword ptr [rbp-48]
vmovdqu   xmmword ptr [rbp-58],xmm0
lea       rcx,[rbp-58]
call      qword ptr [7FF9F636DCC8]
mov       rcx,[rbp-60]
mov       rdx,rax
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rbp+10]
mov       rcx,[rcx+8]
mov       [rbp-20],rcx
cmp       qword ptr [rbp-20],0
je        near ptr M01_L09
mov       rcx,[rbp-20]
cmp       [rcx],ecx
call      qword ptr [7FF9F636DAE8]; System.Text.Json.JsonSerializerOptions+CachingContext.get_Options()
cmp       rax,[rbp+10]
je        short M01_L04
mov       rcx,[rbp-20]
cmp       [rcx],ecx
call      qword ptr [7FF9F636DAE8]; System.Text.Json.JsonSerializerOptions+CachingContext.get_Options()
movzx     ecx,byte ptr [rax+9E]
test      ecx,ecx
jne       short M01_L04
mov       rcx,[rbp-20]
cmp       [rcx],ecx
call      qword ptr [7FF9F636DAE8]; System.Text.Json.JsonSerializerOptions+CachingContext.get_Options()
mov       rcx,rax
cmp       [rcx],ecx
call      qword ptr [7FF9F6306A48]
jmp       short M01_L09
M01_L04
 
mov       rcx,[rbp-20]
cmp       [rcx],ecx
call      qword ptr [7FF9F636DB60]
jmp       short M01_L09
M01_L05
 
mov       rdx,[rbp+10]
mov       rdx,[rdx+20]
mov       [rbp-30],rdx
cmp       qword ptr [rbp-30],0
je        short M01_L06
mov       rdx,[rbp-30]
mov       rcx,offset MT_System.Text.Json.Serialization.Metadata.EmptyJsonTypeInfoResolver
call      qword ptr [7FF9F5DE4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
test      rax,rax
je        short M01_L07
M01_L06
 
mov       dword ptr [rbp-34],1
jmp       short M01_L08
M01_L07
 
xor       eax,eax
mov       [rbp-34],eax
M01_L08
 
cmp       dword ptr [rbp-34],0
je        short M01_L09
call      qword ptr [7FF9F630D098]
M01_L09
 
mov       rax,[rbp+10]
mov       byte ptr [rax+9D],1
mov       rax,[rbp+10]
mov       byte ptr [rax+9E],1
add       rsp,80
pop       rbp
ret
 
System.Text.Json.JsonSerializerOptions.get_ObjectTypeInfo()
push      rsi
push      rbx
sub       rsp,38
mov       rbx,rcx
mov       rax,[rbx+18]
test      rax,rax
je        short M02_L01
M02_L00
 
add       rsp,38
pop       rbx
pop       rsi
ret
M02_L01
 
mov       byte ptr [rsp+30],1
mov       byte ptr [rsp+31],1
xor       ecx,ecx
mov       [rsp+20],ecx
mov       [rsp+28],ecx
mov       rcx,rbx
movzx     r9d,word ptr [rsp+30]
mov       rdx,25252902D10
mov       r8d,1
call      qword ptr [7FF9F63062F8]; System.Text.Json.JsonSerializerOptions.GetTypeInfoInternal(System.Type, Boolean, System.Nullable`1, Boolean, Boolean)
mov       rsi,rax
lea       rcx,[rbx+18]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rax,rsi
jmp       short M02_L00
 
System.Text.Json.JsonSerializer.WriteString[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef, System.Text.Json.Serialization.Metadata.JsonTypeInfo`1)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,88
vzeroupper
lea       rbp,[rsp+0C0]
xor       eax,eax
mov       [rbp-98],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-90],xmm4
vmovdqa   xmmword ptr [rbp-80],xmm4
vmovdqa   xmmword ptr [rbp-70],xmm4
vmovdqa   xmmword ptr [rbp-60],xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
mov       [rbp-40],rax
mov       [rbp-0A0],rsp
mov       rsi,rdx
mov       rbx,r8
mov       rdi,[rbx+0B0]
lea       rdx,[rbp-48]
mov       rcx,rdi
cmp       [rcx],ecx
call      qword ptr [7FF9F6306AC0]; System.Text.Json.JsonSerializerOptions.GetWriterOptions()
mov       edi,[rdi+7C]
mov       rcx,gs:[58]
mov       rcx,[rcx+30]
cmp       dword ptr [rcx+190],3
jl        near ptr M03_L11
mov       rcx,[rcx+198]
mov       rcx,[rcx+18]
test      rcx,rcx
je        near ptr M03_L11
mov       rax,[rcx]
add       rax,10
mov       r14,[rax]
test      r14,r14
je        near ptr M03_L12
M03_L00
 
mov       ecx,[r14+18]
lea       edx,[rcx+1]
mov       [r14+18],edx
test      ecx,ecx
jne       near ptr M03_L15
mov       rcx,[r14+8]
mov       [rbp-90],rcx
mov       r14,[r14+10]
mov       rcx,[rbp-90]
cmp       [rcx],cl
mov       rcx,211C0C01F20
mov       rcx,[rcx]
mov       edx,edi
call      qword ptr [7FF9F65E3A88]; System.Buffers.SharedArrayPool`1[[System.Byte, System.Private.CoreLib]].Rent(Int32)
mov       rcx,[rbp-90]
lea       rcx,[rcx+10]
mov       rdx,rax
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rbp-90]
xor       edx,edx
mov       [rcx+20],edx
lea       rcx,[r14+8]
mov       rdx,[rbp-90]
call      CORINFO_HELP_ASSIGN_REF
mov       edi,[rbp-3C]
lea       rcx,[r14+68]
mov       rdx,[rbp-48]
call      CORINFO_HELP_ASSIGN_REF
mov       ecx,[rbp-40]
mov       [r14+70],ecx
mov       ecx,[rbp-3C]
mov       [r14+74],ecx
mov       ecx,9
mov       edx,20
test      byte ptr [r14+74],8
cmove     ecx,edx
mov       [r14+3B],cl
mov       ecx,edi
and       ecx,7F0
sar       ecx,4
je        short M03_L01
xor       edx,edx
cmp       ecx,2
cmovne    edx,ecx
jmp       short M03_L02
M03_L01
 
mov       edx,2
M03_L02
 
mov       [r14+2C],edx
test      dil,4
jne       near ptr M03_L13
mov       rdi,25252901C08
M03_L03
 
mov       ecx,[rdi+8]
mov       [r14+30],ecx
cmp       dword ptr [r14+70],0
je        near ptr M03_L14
M03_L04
 
mov       [rbp-88],r14
mov       rcx,rbx
mov       rdx,r14
mov       r8,rsi
xor       r9d,r9d
call      qword ptr [7FF9F636D1E8]; System.Text.Json.Serialization.Metadata.JsonTypeInfo`1[[System.__Canon, System.Private.CoreLib]].Serialize(System.Text.Json.Utf8JsonWriter, System.__Canon ByRef, System.Object)
mov       rcx,[rbp-90]
mov       rcx,[rcx+10]
mov       rax,[rbp-90]
mov       r15d,[rax+20]
test      rcx,rcx
je        short M03_L08
cmp       [rcx+8],r15d
jb        short M03_L07
M03_L05
 
xor       r13d,r13d
xor       r12d,r12d
test      rcx,rcx
je        short M03_L10
mov       rax,[rcx]
test      dword ptr [rax],80000000
je        short M03_L09
lea       r13,[rcx+10]
mov       r12d,[rcx+8]
M03_L06
 
cmp       r15d,r12d
ja        short M03_L07
mov       r12d,r15d
jmp       short M03_L10
M03_L07
 
call      qword ptr [7FF9F604E9D0]
int       3
M03_L08
 
test      r15d,r15d
jne       short M03_L07
xor       ecx,ecx
xor       r15d,r15d
jmp       short M03_L05
M03_L09
 
lea       rdx,[rbp-58]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+28]
mov       r13,[rbp-58]
mov       r12d,[rbp-50]
jmp       short M03_L06
M03_L10
 
mov       rcx,r13
mov       [rbp-80],rcx
mov       [rbp-78],r12d
lea       rcx,[rbp-80]
call      qword ptr [7FF9F636E718]; System.Text.Json.JsonReaderHelper.TranscodeHelper(System.ReadOnlySpan`1)
mov       [rbp-98],rax
mov       rcx,rsp
call      M03_L16
nop
mov       rax,[rbp-98]
add       rsp,88
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M03_L11
 
mov       ecx,3
call      CORINFO_HELP_GETSHARED_GCTHREADSTATIC_BASE_NOCTOR_OPTIMIZED
mov       r14,[rax]
test      r14,r14
jne       near ptr M03_L00
M03_L12
 
mov       rcx,offset MT_System.Text.Json.Utf8JsonWriterCache+ThreadLocalState
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
call      qword ptr [7FF9F678E028]; System.Text.Json.Utf8JsonWriterCache+ThreadLocalState..ctor()
mov       ecx,3
call      CORINFO_HELP_GETSHARED_GCTHREADSTATIC_BASE_NOCTOR_OPTIMIZED
mov       rcx,rax
mov       rdx,r14
call      CORINFO_HELP_ASSIGN_REF
jmp       near ptr M03_L00
M03_L13
 
mov       rcx,7FF9F6314D40
mov       edx,69
call      CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
mov       rcx,211C0C0F9D0
mov       rdi,[rcx]
jmp       near ptr M03_L03
M03_L14
 
lea       rcx,[r14+68]
mov       edx,3E8
call      qword ptr [7FF9F66C7A20]; System.Text.Json.JsonWriterOptions.set_MaxDepth(Int32)
jmp       near ptr M03_L04
M03_L15
 
mov       rcx,offset MT_System.Text.Json.PooledByteBufferWriter
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       edx,edi
call      qword ptr [7FF9F6737DB0]
mov       [rbp-90],r14
mov       rcx,offset MT_System.Text.Json.Utf8JsonWriter
call      CORINFO_HELP_NEWSFAST
mov       r13,rax
mov       rdx,r14
vmovdqu   xmm0,xmmword ptr [rbp-48]
vmovdqu   xmmword ptr [rbp-70],xmm0
mov       rcx,r13
lea       r8,[rbp-70]
call      qword ptr [7FF9F66CC0D8]
mov       r14,r13
jmp       near ptr M03_L04
M03_L16
 
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,28
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+0C0]
mov       r14,[rbp-90]
mov       rcx,gs:[58]
mov       rcx,[rcx+30]
cmp       dword ptr [rcx+190],3
jl        short M03_L17
mov       rcx,[rcx+198]
mov       rcx,[rcx+18]
test      rcx,rcx
jne       short M03_L18
M03_L17
 
mov       ecx,3
call      CORINFO_HELP_GETSHARED_GCTHREADSTATIC_BASE_NOCTOR_OPTIMIZED
jmp       short M03_L19
M03_L18
 
mov       rax,[rcx]
add       rax,10
M03_L19
 
mov       r15,[rax]
xor       ecx,ecx
mov       r12,[rbp-88]
mov       [r12+34],ecx
mov       [r12+20],rcx
mov       [r12+40],rcx
mov       [r12+48],rcx
mov       byte ptr [r12+38],0
mov       byte ptr [r12+3A],0
mov       byte ptr [r12+39],0
mov       [r12+28],ecx
mov       [r12+50],rcx
mov       [r12+58],rcx
mov       [r12+60],rcx
mov       [r12+10],rcx
mov       [r12+18],rcx
mov       [r12+8],rcx
mov       rcx,[rbp-90]
mov       rcx,[rcx+10]
mov       rdx,[rbp-90]
mov       r8d,[rdx+20]
test      rcx,rcx
jne       short M03_L20
test      r8d,r8d
jne       short M03_L21
xor       ecx,ecx
xor       r8d,r8d
jmp       short M03_L23
M03_L20
 
cmp       [rcx+8],r8d
jae       short M03_L22
M03_L21
 
call      qword ptr [7FF9F604E9D0]
int       3
M03_L22
 
add       rcx,10
M03_L23
 
mov       edx,r8d
mov       [rbp-60],rdx
test      rdx,rdx
je        short M03_L25
cmp       rdx,300
ja        short M03_L24
xor       edx,edx
mov       r8d,[rbp-60]
call      CORINFO_HELP_MEMSET
jmp       short M03_L25
M03_L24
 
call      qword ptr [7FF9F5E95BA8]; System.Buffer._ZeroMemory(Byte ByRef, UIntPtr)
M03_L25
 
xor       ecx,ecx
mov       [r14+20],ecx
mov       rdx,[r14+10]
mov       [r14+10],rcx
mov       rcx,211C0C01F20
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65E3A90]; System.Buffers.SharedArrayPool`1[[System.Byte, System.Private.CoreLib]].Return(Byte[], Boolean)
dec       dword ptr [r15+18]
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Trim()
push      rsi
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,[rbx+8]
test      esi,esi
je        short M04_L03
movzx     ecx,word ptr [rbx+0C]
cmp       ecx,100
jae       short M04_L00
mov       ecx,ecx
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       short M04_L04
jmp       short M04_L01
M04_L00
 
call      qword ptr [7FF9F673E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       short M04_L04
M04_L01
 
dec       esi
mov       ecx,esi
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L02
mov       ecx,ecx
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       short M04_L04
jmp       short M04_L03
M04_L02
 
call      qword ptr [7FF9F673E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       short M04_L04
M04_L03
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rsi
ret
M04_L04
 
mov       rcx,rbx
mov       edx,3
call      qword ptr [7FF9F5DE73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
nop
add       rsp,28
pop       rbx
pop       rsi
ret
 
DotNetTips.Spargine.Core.Serialization.JsonSerialization.Deserialize[[System.__Canon, System.Private.CoreLib]](System.String)
push      rsi
push      rbx
sub       rsp,58
vzeroupper
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
mov       [rsp+50],rcx
mov       rsi,rcx
mov       rbx,rdx
mov       rcx,rbx
test      rcx,rcx
je        short M05_L00
mov       eax,[rcx+8]
xor       edx,edx
test      eax,eax
sete      dl
test      edx,edx
sete      dl
movzx     edx,dl
test      eax,eax
jne       short M05_L01
jmp       short M05_L01
M05_L00
 
xor       edx,edx
M05_L01
 
test      edx,edx
je        near ptr M05_L10
cmp       [rcx],ecx
call      qword ptr [7FF9F5DE7318]; System.String.Trim()
mov       rbx,rax
mov       rcx,[rsi+10]
mov       rcx,[rcx+10]
test      rcx,rcx
je        short M05_L03
M05_L02
 
mov       r8,211C0C0DD88
mov       r8,[r8]
mov       rdx,rbx
call      qword ptr [7FF9F67DE640]; System.Text.Json.JsonSerializer.Deserialize[[System.__Canon, System.Private.CoreLib]](System.String, System.Text.Json.JsonSerializerOptions)
test      rax,rax
je        near ptr M05_L12
add       rsp,58
pop       rbx
pop       rsi
ret
M05_L03
 
mov       rcx,rsi
mov       rdx,7FF9F67EC790
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
jmp       short M05_L02
M05_L04
 
lea       rcx,[rsp+28]
mov       rdx,252529180F8
call      qword ptr [7FF9F5FD58F0]
M05_L05
 
mov       rcx,[rsi+10]
mov       rcx,[rcx]
call      CORINFO_HELP_TYPEHANDLE_TO_RUNTIMETYPE
mov       r8,rax
lea       rcx,[rsp+28]
mov       rdx,offset MD_System.Runtime.CompilerServices.DefaultInterpolatedStringHandler.AppendFormatted[[System.Type, System.Private.CoreLib]](System.Type)
call      qword ptr [7FF9F622E100]; System.Runtime.CompilerServices.DefaultInterpolatedStringHandler.AppendFormatted[[System.__Canon, System.Private.CoreLib]](System.__Canon)
mov       ebx,[rsp+38]
cmp       ebx,[rsp+48]
jbe       short M05_L07
M05_L06
 
call      qword ptr [7FF9F604E9D0]
int       3
M05_L07
 
mov       rcx,[rsp+40]
mov       edx,ebx
lea       rcx,[rcx+rdx*2]
mov       edx,[rsp+48]
sub       edx,ebx
cmp       edx,1
jb        short M05_L08
mov       rdx,25252900C54
movzx     eax,word ptr [rdx]
mov       [rcx],ax
mov       ecx,[rsp+38]
inc       ecx
mov       [rsp+38],ecx
jmp       short M05_L09
M05_L08
 
lea       rcx,[rsp+28]
mov       rdx,25252900C48
call      qword ptr [7FF9F5FD58F0]
M05_L09
 
mov       rcx,offset MT_System.InvalidOperationException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
lea       rcx,[rsp+28]
call      qword ptr [7FF9F5FD5740]; System.Runtime.CompilerServices.DefaultInterpolatedStringHandler.ToStringAndClear()
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F6076718]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M05_L10
 
call      qword ptr [7FF9F6365368]
mov       rsi,rax
test      rsi,rsi
jne       short M05_L11
call      qword ptr [7FF9F63650B0]
mov       rsi,rax
M05_L11
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,252529148E8
mov       r8,rsi
call      qword ptr [7FF9F6076670]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M05_L12
 
lea       rcx,[rsp+28]
mov       edx,2A
mov       r8d,1
call      qword ptr [7FF9F5FD56B0]; System.Runtime.CompilerServices.DefaultInterpolatedStringHandler..ctor(Int32, Int32)
mov       ecx,[rsp+38]
cmp       ecx,[rsp+48]
ja        near ptr M05_L06
mov       rdx,[rsp+40]
mov       eax,ecx
lea       rdx,[rdx+rax*2]
mov       eax,[rsp+48]
sub       eax,ecx
cmp       eax,29
jb        near ptr M05_L04
mov       rcx,25252918104
vmovdqu   ymm0,ymmword ptr [rcx]
vmovdqu   ymm1,ymmword ptr [rcx+20]
vmovdqu   ymm2,ymmword ptr [rcx+32]
vmovdqu   ymmword ptr [rdx],ymm0
vmovdqu   ymmword ptr [rdx+20],ymm1
vmovdqu   ymmword ptr [rdx+32],ymm2
mov       ecx,[rsp+38]
add       ecx,29
mov       [rsp+38],ecx
jmp       near ptr M05_L05
 
System.Text.RegularExpressions.Regex.get_RegexReplacementWeakReference()
push      rdi
push      rsi
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rax,[rbx+30]
test      rax,rax
je        short M06_L01
M06_L00
 
add       rsp,20
pop       rbx
pop       rsi
pop       rdi
ret
M06_L01
 
lea       rsi,[rbx+30]
mov       rcx,offset MT_System.WeakReference`1[[System.Text.RegularExpressions.RegexReplacement, System.Text.RegularExpressions]]
call      CORINFO_HELP_NEWFAST
mov       rdi,rax
mov       rcx,rdi
xor       edx,edx
xor       r8d,r8d
call      qword ptr [7FF9F5E9D098]; System.WeakReference`1[[System.__Canon, System.Private.CoreLib]].Create(System.__Canon, Boolean)
mov       rcx,rsi
mov       rdx,rdi
xor       r8d,r8d
call      System.Threading.Interlocked.CompareExchange(System.Object ByRef, System.Object, System.Object)
test      rax,rax
jne       short M06_L00
mov       rax,[rbx+30]
jmp       short M06_L00
 
System.Text.RegularExpressions.RegexReplacement.GetOrCreate(System.WeakReference`1, System.String, System.Collections.Hashtable, Int32, System.Collections.Hashtable, System.Text.RegularExpressions.RegexOptions)
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,30
mov       rbx,rcx
mov       rsi,rdx
mov       rdi,r8
mov       ebp,r9d
mov       rax,[rbx+8]
and       rax,0FFFFFFFFFFFFFFFE
je        short M07_L03
test      al,2
jne       short M07_L04
mov       r14,[rax]
M07_L00
 
test      r14,r14
je        short M07_L02
mov       r15,[r14+18]
cmp       [r15],r15b
cmp       r15,rsi
jne       short M07_L05
M07_L01
 
mov       rax,r14
add       rsp,30
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
ret
M07_L02
 
mov       r13,[rsp+90]
mov       [rsp+20],r13
mov       rcx,rsi
mov       edx,[rsp+98]
mov       r8,rdi
mov       r9d,ebp
call      qword ptr [7FF9F68C4048]; System.Text.RegularExpressions.RegexParser.ParseReplacement(System.String, System.Text.RegularExpressions.RegexOptions, System.Collections.Hashtable, Int32, System.Collections.Hashtable)
mov       r14,rax
mov       rcx,rbx
mov       rdx,r14
call      qword ptr [7FF9F5E9D0B0]; System.WeakReference`1[[System.__Canon, System.Private.CoreLib]].SetTarget(System.__Canon)
jmp       short M07_L01
M07_L03
 
xor       r14d,r14d
jmp       short M07_L00
M07_L04
 
and       rax,0FFFFFFFFFFFFFFFC
mov       rcx,[rax]
cmp       [rcx],ecx
call      qword ptr [7FF9F6A75188]
mov       r14,rax
jmp       short M07_L00
M07_L05
 
test      rsi,rsi
je        short M07_L02
mov       r8d,[r15+8]
cmp       r8d,[rsi+8]
jne       short M07_L02
lea       rcx,[r15+0C]
mov       r8d,[r15+8]
add       r8d,r8d
lea       rdx,[rsi+0C]
call      qword ptr [7FF9F5E95068]; System.SpanHelpers.SequenceEqual(Byte ByRef, Byte ByRef, UIntPtr)
test      eax,eax
jne       near ptr M07_L01
jmp       short M07_L02
 
System.Text.RegularExpressions.RegexReplacement.Replace(System.Text.RegularExpressions.Regex, System.String, Int32, Int32)
sub       rsp,28
mov       eax,[rsp+50]
cmp       r9d,0FFFFFFFF
jl        short M08_L01
cmp       [r8+8],eax
jb        short M08_L02
test      r9d,r9d
je        short M08_L03
test      byte ptr [rdx+40],40
je        short M08_L04
M08_L00
 
mov       [rsp+50],eax
add       rsp,28
jmp       qword ptr [7FF9F68AF7E0]; System.Text.RegularExpressions.RegexReplacement.ReplaceNonSimpleText(System.Text.RegularExpressions.Regex, System.String, Int32, Int32)
M08_L01
 
mov       ecx,3
mov       edx,1
call      qword ptr [7FF9F6A75FE0]
int       3
M08_L02
 
mov       ecx,0E
xor       edx,edx
call      qword ptr [7FF9F6A75FE0]
int       3
M08_L03
 
mov       rax,r8
add       rsp,28
ret
M08_L04
 
cmp       byte ptr [rcx+20],0
jne       short M08_L00
mov       r10,[rcx+10]
cmp       dword ptr [r10+8],0
jne       short M08_L05
mov       rcx,rdx
mov       r10,25252900008
jmp       short M08_L06
M08_L05
 
mov       r10,[rcx+8]
cmp       dword ptr [r10+8],0
jbe       short M08_L07
mov       r10,[r10+10]
mov       rcx,rdx
M08_L06
 
mov       [rsp+50],eax
mov       rdx,r8
mov       r8,r10
add       rsp,28
jmp       qword ptr [7FF9F68AF7C8]
M08_L07
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M09_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M09_L02
test      rbx,rbx
je        short M09_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M09_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M09_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FF9F5E95B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FF9F5E95B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M09_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M09_L01
 
call      qword ptr [7FF9F604EF40]
int       3
M09_L02
 
test      rbx,rbx
je        short M09_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M09_L04
M09_L03
 
mov       rax,25252900008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M09_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 
System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
push      rdi
push      rsi
push      rbx
sub       rsp,20
mov       rsi,rcx
mov       rbx,rdx
mov       rdi,[rbx]
M10_L00
 
mov       rdi,[rdi+10]
cmp       rdi,rsi
jne       short M10_L02
M10_L01
 
mov       rcx,7FF9F691A2EC
call      CORINFO_HELP_COUNTPROFILE32
mov       rax,rbx
add       rsp,20
pop       rbx
pop       rsi
pop       rdi
ret
M10_L02
 
test      rdi,rdi
je        near ptr M10_L08
mov       rdi,[rdi+10]
cmp       rdi,rsi
jne       short M10_L03
mov       rcx,7FF9F691A2E8
call      CORINFO_HELP_COUNTPROFILE32
jmp       short M10_L01
M10_L03
 
test      rdi,rdi
je        short M10_L04
mov       rdi,[rdi+10]
cmp       rdi,rsi
jne       short M10_L05
mov       rcx,7FF9F691A2E0
call      CORINFO_HELP_COUNTPROFILE32
jmp       short M10_L01
M10_L04
 
mov       rcx,7FF9F691A2E4
call      CORINFO_HELP_COUNTPROFILE32
jmp       short M10_L08
M10_L05
 
test      rdi,rdi
je        short M10_L07
mov       rdi,[rdi+10]
cmp       rdi,rsi
je        short M10_L06
test      rdi,rdi
je        short M10_L09
mov       rcx,7FF9F691A2D4
call      CORINFO_HELP_COUNTPROFILE32
jmp       near ptr M10_L00
M10_L06
 
mov       rcx,7FF9F691A2D8
call      CORINFO_HELP_COUNTPROFILE32
jmp       near ptr M10_L01
M10_L07
 
mov       rcx,7FF9F691A2DC
call      CORINFO_HELP_COUNTPROFILE32
M10_L08
 
mov       rcx,7FF9F691A2F0
call      CORINFO_HELP_COUNTPROFILE32
mov       rcx,rsi
mov       rdx,rbx
add       rsp,20
pop       rbx
pop       rsi
pop       rdi
jmp       qword ptr [7FF9F5DE43A8]
M10_L09
 
mov       rcx,7FF9F691A2D0
call      CORINFO_HELP_COUNTPROFILE32
jmp       short M10_L08
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.Split()
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rcx,[rbx+298]
cmp       [rcx],cl
xor       edx,edx
mov       [rsp+20],edx
mov       rdx,2AFC48B1C08
xor       r8d,r8d
mov       r9d,7FFFFFFF
call      qword ptr [7FF9F5DB7138]; System.String.SplitInternal(System.String, System.String[], Int32, System.StringSplitOptions)
mov       rsi,rax
xor       edi,edi
mov       ebp,[rsi+8]
test      ebp,ebp
jle       short M00_L01
M00_L00
 
mov       ecx,edi
mov       rcx,[rsi+rcx*8+10]
mov       [rsp+28],rcx
mov       r14,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[r14+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [r14+8],rax
inc       edi
cmp       ebp,edi
jg        short M00_L00
M00_L01
 
add       rsp,30
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
ret
 
System.String.SplitInternal(System.String, System.String[], Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,0E8
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
mov       rax,0FFFFFFFFFFFFFF70
M01_L00
 
vmovdqa   xmmword ptr [rbp+rax+0B0],xmm4
vmovdqa   xmmword ptr [rbp+rax+0C0],xmm4
vmovdqa   xmmword ptr [rbp+rax+0D0],xmm4
add       rax,30
jne       short M01_L00
mov       [rbp+0B0],rax
mov       rax,83FAB36AB2CB
mov       [rbp],rax
mov       rsi,rcx
mov       rdi,r8
mov       ebx,r9d
mov       r14d,[rbp+110]
test      ebx,ebx
jl        short M01_L04
test      r14d,0FFFFFFFC
jne       near ptr M01_L05
xor       r15d,r15d
test      rdx,rdx
setne     r15b
test      r15d,r15d
je        near ptr M01_L06
M01_L01
 
cmp       ebx,1
jle       near ptr M01_L08
cmp       dword ptr [rsi+8],0
je        near ptr M01_L08
test      r15d,r15d
je        near ptr M01_L10
cmp       dword ptr [rdx+8],0
je        near ptr M01_L09
mov       rcx,rsi
mov       r8d,ebx
mov       r9d,r14d
call      qword ptr [7FF9F5DB7168]; System.String.SplitInternal(System.String, Int32, System.StringSplitOptions)
M01_L02
 
mov       rcx,83FAB36AB2CB
cmp       [rbp],rcx
je        short M01_L03
call      CORINFO_HELP_FAIL_FAST
M01_L03
 
nop
lea       rsp,[rbp+0B8]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L04
 
mov       ecx,1C7
mov       rdx,7FF9F5C64000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,ebx
call      qword ptr [7FF9F687E520]
int       3
M01_L05
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F601ECB8]
int       3
M01_L06
 
test      rdi,rdi
je        short M01_L07
cmp       dword ptr [rdi+8],0
jne       near ptr M01_L01
M01_L07
 
xor       ecx,ecx
mov       [rbp+48],rcx
xor       ecx,ecx
mov       [rbp+50],ecx
mov       rcx,rsi
lea       rdx,[rbp+48]
mov       r8d,ebx
mov       r9d,r14d
call      qword ptr [7FF9F5DB70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
jmp       near ptr M01_L02
M01_L08
 
mov       rcx,rsi
mov       edx,r14d
mov       r8d,ebx
call      qword ptr [7FF9F5DB7150]; System.String.CreateSplitArrayOfThisAsSoleValue(System.StringSplitOptions, Int32)
jmp       near ptr M01_L02
M01_L09
 
mov       ebx,1
jmp       near ptr M01_L01
M01_L10
 
test      [rsp],esp
sub       rsp,200
lea       rdx,[rsp+30]
mov       [rbp+38],rdx
mov       dword ptr [rbp+40],80
lea       rdx,[rbp+38]
lea       rcx,[rbp+98]
call      qword ptr [7FF9F659CF00]
test      [rsp],esp
sub       rsp,200
lea       rdx,[rsp+30]
mov       [rbp+38],rdx
mov       dword ptr [rbp+40],80
lea       rdx,[rbp+38]
lea       rcx,[rbp+78]
call      qword ptr [7FF9F659CF00]
lea       rcx,[rsi+0C]
mov       edx,[rsi+8]
test      rdi,rdi
jne       short M01_L11
xor       r8d,r8d
xor       r9d,r9d
jmp       short M01_L12
M01_L11
 
lea       r8,[rdi+10]
mov       r9d,[rdi+8]
M01_L12
 
mov       [rbp+48],rcx
mov       [rbp+50],edx
mov       [rbp+28],r8
mov       [rbp+30],r9d
lea       rcx,[rbp+48]
lea       rdx,[rbp+28]
lea       r8,[rbp+98]
lea       r9,[rbp+78]
call      qword ptr [7FF9F5DB71F8]
lea       rcx,[rbp+98]
lea       rdx,[rbp+68]
call      qword ptr [7FF9F659D008]
lea       rcx,[rbp+78]
lea       rdx,[rbp+58]
call      qword ptr [7FF9F659D008]
cmp       dword ptr [rbp+70],0
je        near ptr M01_L08
test      r14d,r14d
jne       short M01_L13
vmovdqu   xmm0,xmmword ptr [rbp+68]
vmovdqu   xmmword ptr [rbp+18],xmm0
vmovdqu   xmm0,xmmword ptr [rbp+58]
vmovdqu   xmmword ptr [rbp+8],xmm0
mov       [rsp+20],ebx
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
xor       r9d,r9d
call      qword ptr [7FF9F5DB7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       rdi,rax
jmp       short M01_L14
M01_L13
 
vmovdqu   xmm0,xmmword ptr [rbp+68]
vmovdqu   xmmword ptr [rbp+18],xmm0
vmovdqu   xmm0,xmmword ptr [rbp+58]
vmovdqu   xmmword ptr [rbp+8],xmm0
mov       [rsp+20],ebx
mov       [rsp+28],r14d
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
xor       r9d,r9d
call      qword ptr [7FF9F5DB7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       rdi,rax
M01_L14
 
mov       rdx,[rbp+98]
test      rdx,rdx
je        short M01_L15
xor       ecx,ecx
mov       [rbp+98],rcx
mov       rcx,26F32C01F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65B5188]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M01_L15
 
mov       rdx,[rbp+78]
test      rdx,rdx
je        short M01_L16
xor       ecx,ecx
mov       [rbp+78],rcx
mov       rcx,26F32C01F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65B5188]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M01_L16
 
mov       rax,rdi
jmp       near ptr M01_L02
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.Split()
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rcx,[rbx+298]
cmp       [rcx],cl
xor       edx,edx
mov       [rsp+20],edx
mov       rdx,2546A231C08
xor       r8d,r8d
mov       r9d,7FFFFFFF
call      qword ptr [7FF9F5DD7138]; System.String.SplitInternal(System.String, System.String[], Int32, System.StringSplitOptions)
mov       rsi,rax
xor       edi,edi
mov       ebp,[rsi+8]
test      ebp,ebp
jle       short M00_L01
M00_L00
 
mov       ecx,edi
mov       rcx,[rsi+rcx*8+10]
mov       [rsp+28],rcx
mov       r14,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[r14+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [r14+8],rax
inc       edi
cmp       ebp,edi
jg        short M00_L00
M00_L01
 
add       rsp,30
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
ret
 
System.String.SplitInternal(System.String, System.String[], Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,0E8
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
mov       rax,0FFFFFFFFFFFFFF70
M01_L00
 
vmovdqa   xmmword ptr [rbp+rax+0B0],xmm4
vmovdqa   xmmword ptr [rbp+rax+0C0],xmm4
vmovdqa   xmmword ptr [rbp+rax+0D0],xmm4
add       rax,30
jne       short M01_L00
mov       [rbp+0B0],rax
mov       rax,30E04DDC67B9
mov       [rbp],rax
mov       rsi,rcx
mov       rdi,r8
mov       ebx,r9d
mov       r14d,[rbp+110]
test      ebx,ebx
jl        short M01_L04
test      r14d,0FFFFFFFC
jne       near ptr M01_L05
xor       r15d,r15d
test      rdx,rdx
setne     r15b
test      r15d,r15d
je        near ptr M01_L06
M01_L01
 
cmp       ebx,1
jle       near ptr M01_L08
cmp       dword ptr [rsi+8],0
je        near ptr M01_L08
test      r15d,r15d
je        near ptr M01_L10
cmp       dword ptr [rdx+8],0
je        near ptr M01_L09
mov       rcx,rsi
mov       r8d,ebx
mov       r9d,r14d
call      qword ptr [7FF9F5DD7168]; System.String.SplitInternal(System.String, Int32, System.StringSplitOptions)
M01_L02
 
mov       rcx,30E04DDC67B9
cmp       [rbp],rcx
je        short M01_L03
call      CORINFO_HELP_FAIL_FAST
M01_L03
 
nop
lea       rsp,[rbp+0B8]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L04
 
mov       ecx,1C7
mov       rdx,7FF9F5C84000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,ebx
call      qword ptr [7FF9F689E520]
int       3
M01_L05
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F603ECB8]
int       3
M01_L06
 
test      rdi,rdi
je        short M01_L07
cmp       dword ptr [rdi+8],0
jne       near ptr M01_L01
M01_L07
 
xor       ecx,ecx
mov       [rbp+48],rcx
xor       ecx,ecx
mov       [rbp+50],ecx
mov       rcx,rsi
lea       rdx,[rbp+48]
mov       r8d,ebx
mov       r9d,r14d
call      qword ptr [7FF9F5DD70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
jmp       near ptr M01_L02
M01_L08
 
mov       rcx,rsi
mov       edx,r14d
mov       r8d,ebx
call      qword ptr [7FF9F5DD7150]; System.String.CreateSplitArrayOfThisAsSoleValue(System.StringSplitOptions, Int32)
jmp       near ptr M01_L02
M01_L09
 
mov       ebx,1
jmp       near ptr M01_L01
M01_L10
 
test      [rsp],esp
sub       rsp,200
lea       rdx,[rsp+30]
mov       [rbp+38],rdx
mov       dword ptr [rbp+40],80
lea       rdx,[rbp+38]
lea       rcx,[rbp+98]
call      qword ptr [7FF9F65BCF00]
test      [rsp],esp
sub       rsp,200
lea       rdx,[rsp+30]
mov       [rbp+38],rdx
mov       dword ptr [rbp+40],80
lea       rdx,[rbp+38]
lea       rcx,[rbp+78]
call      qword ptr [7FF9F65BCF00]
lea       rcx,[rsi+0C]
mov       edx,[rsi+8]
test      rdi,rdi
jne       short M01_L11
xor       r8d,r8d
xor       r9d,r9d
jmp       short M01_L12
M01_L11
 
lea       r8,[rdi+10]
mov       r9d,[rdi+8]
M01_L12
 
mov       [rbp+48],rcx
mov       [rbp+50],edx
mov       [rbp+28],r8
mov       [rbp+30],r9d
lea       rcx,[rbp+48]
lea       rdx,[rbp+28]
lea       r8,[rbp+98]
lea       r9,[rbp+78]
call      qword ptr [7FF9F5DD71F8]
lea       rcx,[rbp+98]
lea       rdx,[rbp+68]
call      qword ptr [7FF9F65BD008]
lea       rcx,[rbp+78]
lea       rdx,[rbp+58]
call      qword ptr [7FF9F65BD008]
cmp       dword ptr [rbp+70],0
je        near ptr M01_L08
test      r14d,r14d
jne       short M01_L13
vmovdqu   xmm0,xmmword ptr [rbp+68]
vmovdqu   xmmword ptr [rbp+18],xmm0
vmovdqu   xmm0,xmmword ptr [rbp+58]
vmovdqu   xmmword ptr [rbp+8],xmm0
mov       [rsp+20],ebx
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
xor       r9d,r9d
call      qword ptr [7FF9F5DD7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       rdi,rax
jmp       short M01_L14
M01_L13
 
vmovdqu   xmm0,xmmword ptr [rbp+68]
vmovdqu   xmmword ptr [rbp+18],xmm0
vmovdqu   xmm0,xmmword ptr [rbp+58]
vmovdqu   xmmword ptr [rbp+8],xmm0
mov       [rsp+20],ebx
mov       [rsp+28],r14d
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
xor       r9d,r9d
call      qword ptr [7FF9F5DD7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       rdi,rax
M01_L14
 
mov       rdx,[rbp+98]
test      rdx,rdx
je        short M01_L15
xor       ecx,ecx
mov       [rbp+98],rcx
mov       rcx,213D8401F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65D5240]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M01_L15
 
mov       rdx,[rbp+78]
test      rdx,rdx
je        short M01_L16
xor       ecx,ecx
mov       [rbp+78],rcx
mov       rcx,213D8401F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65D5240]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M01_L16
 
mov       rax,rdi
jmp       near ptr M01_L02
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.Split()
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rcx,[rbx+298]
cmp       [rcx],cl
xor       edx,edx
mov       [rsp+20],edx
mov       rdx,24D34641C08
xor       r8d,r8d
mov       r9d,7FFFFFFF
call      qword ptr [7FF9F5DB7138]; System.String.SplitInternal(System.String, System.String[], Int32, System.StringSplitOptions)
mov       rsi,rax
xor       edi,edi
mov       ebp,[rsi+8]
test      ebp,ebp
jle       short M00_L01
M00_L00
 
mov       ecx,edi
mov       rcx,[rsi+rcx*8+10]
mov       [rsp+28],rcx
mov       r14,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[r14+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [r14+8],rax
inc       edi
cmp       ebp,edi
jg        short M00_L00
M00_L01
 
add       rsp,30
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
ret
 
System.String.SplitInternal(System.String, System.String[], Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,0E8
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
mov       rax,0FFFFFFFFFFFFFF70
M01_L00
 
vmovdqa   xmmword ptr [rbp+rax+0B0],xmm4
vmovdqa   xmmword ptr [rbp+rax+0C0],xmm4
vmovdqa   xmmword ptr [rbp+rax+0D0],xmm4
add       rax,30
jne       short M01_L00
mov       [rbp+0B0],rax
mov       rax,8AA16F23B332
mov       [rbp],rax
mov       rsi,rcx
mov       rdi,r8
mov       ebx,r9d
mov       r14d,[rbp+110]
test      ebx,ebx
jl        short M01_L04
test      r14d,0FFFFFFFC
jne       near ptr M01_L05
xor       r15d,r15d
test      rdx,rdx
setne     r15b
test      r15d,r15d
je        near ptr M01_L06
M01_L01
 
cmp       ebx,1
jle       near ptr M01_L08
cmp       dword ptr [rsi+8],0
je        near ptr M01_L08
test      r15d,r15d
je        near ptr M01_L10
cmp       dword ptr [rdx+8],0
je        near ptr M01_L09
mov       rcx,rsi
mov       r8d,ebx
mov       r9d,r14d
call      qword ptr [7FF9F5DB7168]; System.String.SplitInternal(System.String, Int32, System.StringSplitOptions)
M01_L02
 
mov       rcx,8AA16F23B332
cmp       [rbp],rcx
je        short M01_L03
call      CORINFO_HELP_FAIL_FAST
M01_L03
 
nop
lea       rsp,[rbp+0B8]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L04
 
mov       ecx,1C7
mov       rdx,7FF9F5C64000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,ebx
call      qword ptr [7FF9F687E520]
int       3
M01_L05
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F601ECB8]
int       3
M01_L06
 
test      rdi,rdi
je        short M01_L07
cmp       dword ptr [rdi+8],0
jne       near ptr M01_L01
M01_L07
 
xor       ecx,ecx
mov       [rbp+48],rcx
xor       ecx,ecx
mov       [rbp+50],ecx
mov       rcx,rsi
lea       rdx,[rbp+48]
mov       r8d,ebx
mov       r9d,r14d
call      qword ptr [7FF9F5DB70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
jmp       near ptr M01_L02
M01_L08
 
mov       rcx,rsi
mov       edx,r14d
mov       r8d,ebx
call      qword ptr [7FF9F5DB7150]; System.String.CreateSplitArrayOfThisAsSoleValue(System.StringSplitOptions, Int32)
jmp       near ptr M01_L02
M01_L09
 
mov       ebx,1
jmp       near ptr M01_L01
M01_L10
 
test      [rsp],esp
sub       rsp,200
lea       rdx,[rsp+30]
mov       [rbp+38],rdx
mov       dword ptr [rbp+40],80
lea       rdx,[rbp+38]
lea       rcx,[rbp+98]
call      qword ptr [7FF9F659CF78]
test      [rsp],esp
sub       rsp,200
lea       rdx,[rsp+30]
mov       [rbp+38],rdx
mov       dword ptr [rbp+40],80
lea       rdx,[rbp+38]
lea       rcx,[rbp+78]
call      qword ptr [7FF9F659CF78]
lea       rcx,[rsi+0C]
mov       edx,[rsi+8]
test      rdi,rdi
jne       short M01_L11
xor       r8d,r8d
xor       r9d,r9d
jmp       short M01_L12
M01_L11
 
lea       r8,[rdi+10]
mov       r9d,[rdi+8]
M01_L12
 
mov       [rbp+48],rcx
mov       [rbp+50],edx
mov       [rbp+28],r8
mov       [rbp+30],r9d
lea       rcx,[rbp+48]
lea       rdx,[rbp+28]
lea       r8,[rbp+98]
lea       r9,[rbp+78]
call      qword ptr [7FF9F5DB71F8]
lea       rcx,[rbp+98]
lea       rdx,[rbp+68]
call      qword ptr [7FF9F659D080]
lea       rcx,[rbp+78]
lea       rdx,[rbp+58]
call      qword ptr [7FF9F659D080]
cmp       dword ptr [rbp+70],0
je        near ptr M01_L08
test      r14d,r14d
jne       short M01_L13
vmovdqu   xmm0,xmmword ptr [rbp+68]
vmovdqu   xmmword ptr [rbp+18],xmm0
vmovdqu   xmm0,xmmword ptr [rbp+58]
vmovdqu   xmmword ptr [rbp+8],xmm0
mov       [rsp+20],ebx
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
xor       r9d,r9d
call      qword ptr [7FF9F5DB7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       rdi,rax
jmp       short M01_L14
M01_L13
 
vmovdqu   xmm0,xmmword ptr [rbp+68]
vmovdqu   xmmword ptr [rbp+18],xmm0
vmovdqu   xmm0,xmmword ptr [rbp+58]
vmovdqu   xmmword ptr [rbp+8],xmm0
mov       [rsp+20],ebx
mov       [rsp+28],r14d
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
xor       r9d,r9d
call      qword ptr [7FF9F5DB7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       rdi,rax
M01_L14
 
mov       rdx,[rbp+98]
test      rdx,rdx
je        short M01_L15
xor       ecx,ecx
mov       [rbp+98],rcx
mov       rcx,20CA6801F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65B5250]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M01_L15
 
mov       rdx,[rbp+78]
test      rdx,rdx
je        short M01_L16
xor       ecx,ecx
mov       [rbp+78],rcx
mov       rcx,20CA6801F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65B5250]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M01_L16
 
mov       rax,rdi
jmp       near ptr M01_L02
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.Split()
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rcx,[rbx+298]
cmp       [rcx],cl
xor       edx,edx
mov       [rsp+20],edx
mov       rdx,29CCA7B1C08
xor       r8d,r8d
mov       r9d,7FFFFFFF
call      qword ptr [7FF9F5DC7138]; System.String.SplitInternal(System.String, System.String[], Int32, System.StringSplitOptions)
mov       rsi,rax
xor       edi,edi
mov       ebp,[rsi+8]
test      ebp,ebp
jle       short M00_L01
M00_L00
 
mov       ecx,edi
mov       rcx,[rsi+rcx*8+10]
mov       [rsp+28],rcx
mov       r14,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[r14+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [r14+8],rax
inc       edi
cmp       ebp,edi
jg        short M00_L00
M00_L01
 
add       rsp,30
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
ret
 
System.String.SplitInternal(System.String, System.String[], Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,0E8
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
mov       rax,0FFFFFFFFFFFFFF70
M01_L00
 
vmovdqa   xmmword ptr [rbp+rax+0B0],xmm4
vmovdqa   xmmword ptr [rbp+rax+0C0],xmm4
vmovdqa   xmmword ptr [rbp+rax+0D0],xmm4
add       rax,30
jne       short M01_L00
mov       [rbp+0B0],rax
mov       rax,4456A2621ECD
mov       [rbp],rax
mov       rsi,rcx
mov       rdi,r8
mov       ebx,r9d
mov       r14d,[rbp+110]
test      ebx,ebx
jl        short M01_L04
test      r14d,0FFFFFFFC
jne       near ptr M01_L05
xor       r15d,r15d
test      rdx,rdx
setne     r15b
test      r15d,r15d
je        near ptr M01_L06
M01_L01
 
cmp       ebx,1
jle       near ptr M01_L08
cmp       dword ptr [rsi+8],0
je        near ptr M01_L08
test      r15d,r15d
je        near ptr M01_L10
cmp       dword ptr [rdx+8],0
je        near ptr M01_L09
mov       rcx,rsi
mov       r8d,ebx
mov       r9d,r14d
call      qword ptr [7FF9F5DC7168]; System.String.SplitInternal(System.String, Int32, System.StringSplitOptions)
M01_L02
 
mov       rcx,4456A2621ECD
cmp       [rbp],rcx
je        short M01_L03
call      CORINFO_HELP_FAIL_FAST
M01_L03
 
nop
lea       rsp,[rbp+0B8]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L04
 
mov       ecx,1C7
mov       rdx,7FF9F5C74000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,ebx
call      qword ptr [7FF9F688E520]
int       3
M01_L05
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F602ECB8]
int       3
M01_L06
 
test      rdi,rdi
je        short M01_L07
cmp       dword ptr [rdi+8],0
jne       near ptr M01_L01
M01_L07
 
xor       ecx,ecx
mov       [rbp+48],rcx
xor       ecx,ecx
mov       [rbp+50],ecx
mov       rcx,rsi
lea       rdx,[rbp+48]
mov       r8d,ebx
mov       r9d,r14d
call      qword ptr [7FF9F5DC70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
jmp       near ptr M01_L02
M01_L08
 
mov       rcx,rsi
mov       edx,r14d
mov       r8d,ebx
call      qword ptr [7FF9F5DC7150]; System.String.CreateSplitArrayOfThisAsSoleValue(System.StringSplitOptions, Int32)
jmp       near ptr M01_L02
M01_L09
 
mov       ebx,1
jmp       near ptr M01_L01
M01_L10
 
test      [rsp],esp
sub       rsp,200
lea       rdx,[rsp+30]
mov       [rbp+38],rdx
mov       dword ptr [rbp+40],80
lea       rdx,[rbp+38]
lea       rcx,[rbp+98]
call      qword ptr [7FF9F65ACBE8]
test      [rsp],esp
sub       rsp,200
lea       rdx,[rsp+30]
mov       [rbp+38],rdx
mov       dword ptr [rbp+40],80
lea       rdx,[rbp+38]
lea       rcx,[rbp+78]
call      qword ptr [7FF9F65ACBE8]
lea       rcx,[rsi+0C]
mov       edx,[rsi+8]
test      rdi,rdi
jne       short M01_L11
xor       r8d,r8d
xor       r9d,r9d
jmp       short M01_L12
M01_L11
 
lea       r8,[rdi+10]
mov       r9d,[rdi+8]
M01_L12
 
mov       [rbp+48],rcx
mov       [rbp+50],edx
mov       [rbp+28],r8
mov       [rbp+30],r9d
lea       rcx,[rbp+48]
lea       rdx,[rbp+28]
lea       r8,[rbp+98]
lea       r9,[rbp+78]
call      qword ptr [7FF9F5DC71F8]
lea       rcx,[rbp+98]
lea       rdx,[rbp+68]
call      qword ptr [7FF9F65ACCF0]
lea       rcx,[rbp+78]
lea       rdx,[rbp+58]
call      qword ptr [7FF9F65ACCF0]
cmp       dword ptr [rbp+70],0
je        near ptr M01_L08
test      r14d,r14d
jne       short M01_L13
vmovdqu   xmm0,xmmword ptr [rbp+68]
vmovdqu   xmmword ptr [rbp+18],xmm0
vmovdqu   xmm0,xmmword ptr [rbp+58]
vmovdqu   xmmword ptr [rbp+8],xmm0
mov       [rsp+20],ebx
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
xor       r9d,r9d
call      qword ptr [7FF9F5DC7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       rdi,rax
jmp       short M01_L14
M01_L13
 
vmovdqu   xmm0,xmmword ptr [rbp+68]
vmovdqu   xmmword ptr [rbp+18],xmm0
vmovdqu   xmm0,xmmword ptr [rbp+58]
vmovdqu   xmmword ptr [rbp+8],xmm0
mov       [rsp+20],ebx
mov       [rsp+28],r14d
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
xor       r9d,r9d
call      qword ptr [7FF9F5DC7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       rdi,rax
M01_L14
 
mov       rdx,[rbp+98]
test      rdx,rdx
je        short M01_L15
xor       ecx,ecx
mov       [rbp+98],rcx
mov       rcx,25C3C801F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65C4BE8]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M01_L15
 
mov       rdx,[rbp+78]
test      rdx,rdx
je        short M01_L16
xor       ecx,ecx
mov       [rbp+78],rcx
mov       rcx,25C3C801F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65C4BE8]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M01_L16
 
mov       rax,rdi
jmp       near ptr M01_L02
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.Split()
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rcx,[rbx+298]
cmp       [rcx],cl
xor       edx,edx
mov       [rsp+20],edx
mov       rdx,25046C11C08
xor       r8d,r8d
mov       r9d,7FFFFFFF
call      qword ptr [7FF9F5DB7138]; System.String.SplitInternal(System.String, System.String[], Int32, System.StringSplitOptions)
mov       rsi,rax
xor       edi,edi
mov       ebp,[rsi+8]
test      ebp,ebp
jle       short M00_L01
M00_L00
 
mov       ecx,edi
mov       rcx,[rsi+rcx*8+10]
mov       [rsp+28],rcx
mov       r14,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[r14+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [r14+8],rax
inc       edi
cmp       ebp,edi
jg        short M00_L00
M00_L01
 
add       rsp,30
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
ret
 
System.String.SplitInternal(System.String, System.String[], Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,0E8
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
mov       rax,0FFFFFFFFFFFFFF70
M01_L00
 
vmovdqa   xmmword ptr [rbp+rax+0B0],xmm4
vmovdqa   xmmword ptr [rbp+rax+0C0],xmm4
vmovdqa   xmmword ptr [rbp+rax+0D0],xmm4
add       rax,30
jne       short M01_L00
mov       [rbp+0B0],rax
mov       rax,0E24F5A1DA239
mov       [rbp],rax
mov       rsi,rcx
mov       rdi,r8
mov       ebx,r9d
mov       r14d,[rbp+110]
test      ebx,ebx
jl        short M01_L04
test      r14d,0FFFFFFFC
jne       near ptr M01_L05
xor       r15d,r15d
test      rdx,rdx
setne     r15b
test      r15d,r15d
je        near ptr M01_L06
M01_L01
 
cmp       ebx,1
jle       near ptr M01_L08
cmp       dword ptr [rsi+8],0
je        near ptr M01_L08
test      r15d,r15d
je        near ptr M01_L10
cmp       dword ptr [rdx+8],0
je        near ptr M01_L09
mov       rcx,rsi
mov       r8d,ebx
mov       r9d,r14d
call      qword ptr [7FF9F5DB7168]; System.String.SplitInternal(System.String, Int32, System.StringSplitOptions)
M01_L02
 
mov       rcx,0E24F5A1DA239
cmp       [rbp],rcx
je        short M01_L03
call      CORINFO_HELP_FAIL_FAST
M01_L03
 
nop
lea       rsp,[rbp+0B8]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L04
 
mov       ecx,1C7
mov       rdx,7FF9F5C64000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,ebx
call      qword ptr [7FF9F687FF90]
int       3
M01_L05
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F601ECB8]
int       3
M01_L06
 
test      rdi,rdi
je        short M01_L07
cmp       dword ptr [rdi+8],0
jne       near ptr M01_L01
M01_L07
 
xor       ecx,ecx
mov       [rbp+48],rcx
xor       ecx,ecx
mov       [rbp+50],ecx
mov       rcx,rsi
lea       rdx,[rbp+48]
mov       r8d,ebx
mov       r9d,r14d
call      qword ptr [7FF9F5DB70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
jmp       near ptr M01_L02
M01_L08
 
mov       rcx,rsi
mov       edx,r14d
mov       r8d,ebx
call      qword ptr [7FF9F5DB7150]; System.String.CreateSplitArrayOfThisAsSoleValue(System.StringSplitOptions, Int32)
jmp       near ptr M01_L02
M01_L09
 
mov       ebx,1
jmp       near ptr M01_L01
M01_L10
 
test      [rsp],esp
sub       rsp,200
lea       rdx,[rsp+30]
mov       [rbp+38],rdx
mov       dword ptr [rbp+40],80
lea       rdx,[rbp+38]
lea       rcx,[rbp+98]
call      qword ptr [7FF9F659CF78]
test      [rsp],esp
sub       rsp,200
lea       rdx,[rsp+30]
mov       [rbp+38],rdx
mov       dword ptr [rbp+40],80
lea       rdx,[rbp+38]
lea       rcx,[rbp+78]
call      qword ptr [7FF9F659CF78]
lea       rcx,[rsi+0C]
mov       edx,[rsi+8]
test      rdi,rdi
jne       short M01_L11
xor       r8d,r8d
xor       r9d,r9d
jmp       short M01_L12
M01_L11
 
lea       r8,[rdi+10]
mov       r9d,[rdi+8]
M01_L12
 
mov       [rbp+48],rcx
mov       [rbp+50],edx
mov       [rbp+28],r8
mov       [rbp+30],r9d
lea       rcx,[rbp+48]
lea       rdx,[rbp+28]
lea       r8,[rbp+98]
lea       r9,[rbp+78]
call      qword ptr [7FF9F5DB71F8]
lea       rcx,[rbp+98]
lea       rdx,[rbp+68]
call      qword ptr [7FF9F659D080]
lea       rcx,[rbp+78]
lea       rdx,[rbp+58]
call      qword ptr [7FF9F659D080]
cmp       dword ptr [rbp+70],0
je        near ptr M01_L08
test      r14d,r14d
jne       short M01_L13
vmovdqu   xmm0,xmmword ptr [rbp+68]
vmovdqu   xmmword ptr [rbp+18],xmm0
vmovdqu   xmm0,xmmword ptr [rbp+58]
vmovdqu   xmmword ptr [rbp+8],xmm0
mov       [rsp+20],ebx
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
xor       r9d,r9d
call      qword ptr [7FF9F5DB7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       rdi,rax
jmp       short M01_L14
M01_L13
 
vmovdqu   xmm0,xmmword ptr [rbp+68]
vmovdqu   xmmword ptr [rbp+18],xmm0
vmovdqu   xmm0,xmmword ptr [rbp+58]
vmovdqu   xmmword ptr [rbp+8],xmm0
mov       [rsp+20],ebx
mov       [rsp+28],r14d
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
xor       r9d,r9d
call      qword ptr [7FF9F5DB7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       rdi,rax
M01_L14
 
mov       rdx,[rbp+98]
test      rdx,rdx
je        short M01_L15
xor       ecx,ecx
mov       [rbp+98],rcx
mov       rcx,20FB4C01F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65B5250]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M01_L15
 
mov       rdx,[rbp+78]
test      rdx,rdx
je        short M01_L16
xor       ecx,ecx
mov       [rbp+78],rcx
mov       rcx,20FB4C01F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65B5250]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M01_L16
 
mov       rax,rdi
jmp       near ptr M01_L02
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.Split()
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rcx,[rbx+298]
cmp       [rcx],cl
xor       edx,edx
mov       [rsp+20],edx
mov       rdx,1B546971C08
xor       r8d,r8d
mov       r9d,7FFFFFFF
call      qword ptr [7FF9F5DB7138]; System.String.SplitInternal(System.String, System.String[], Int32, System.StringSplitOptions)
mov       rsi,rax
xor       edi,edi
mov       ebp,[rsi+8]
test      ebp,ebp
jle       short M00_L01
M00_L00
 
mov       ecx,edi
mov       rcx,[rsi+rcx*8+10]
mov       [rsp+28],rcx
mov       r14,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[r14+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [r14+8],rax
inc       edi
cmp       ebp,edi
jg        short M00_L00
M00_L01
 
add       rsp,30
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
ret
 
System.String.SplitInternal(System.String, System.String[], Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,0E8
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
mov       rax,0FFFFFFFFFFFFFF70
M01_L00
 
vmovdqa   xmmword ptr [rbp+rax+0B0],xmm4
vmovdqa   xmmword ptr [rbp+rax+0C0],xmm4
vmovdqa   xmmword ptr [rbp+rax+0D0],xmm4
add       rax,30
jne       short M01_L00
mov       [rbp+0B0],rax
mov       rax,492BFC2E3D13
mov       [rbp],rax
mov       rsi,rcx
mov       rdi,r8
mov       ebx,r9d
mov       r14d,[rbp+110]
test      ebx,ebx
jl        short M01_L04
test      r14d,0FFFFFFFC
jne       near ptr M01_L05
xor       r15d,r15d
test      rdx,rdx
setne     r15b
test      r15d,r15d
je        near ptr M01_L06
M01_L01
 
cmp       ebx,1
jle       near ptr M01_L08
cmp       dword ptr [rsi+8],0
je        near ptr M01_L08
test      r15d,r15d
je        near ptr M01_L10
cmp       dword ptr [rdx+8],0
je        near ptr M01_L09
mov       rcx,rsi
mov       r8d,ebx
mov       r9d,r14d
call      qword ptr [7FF9F5DB7168]; System.String.SplitInternal(System.String, Int32, System.StringSplitOptions)
M01_L02
 
mov       rcx,492BFC2E3D13
cmp       [rbp],rcx
je        short M01_L03
call      CORINFO_HELP_FAIL_FAST
M01_L03
 
nop
lea       rsp,[rbp+0B8]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L04
 
mov       ecx,1C7
mov       rdx,7FF9F5C64000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,ebx
call      qword ptr [7FF9F687FBA0]
int       3
M01_L05
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F601ECB8]
int       3
M01_L06
 
test      rdi,rdi
je        short M01_L07
cmp       dword ptr [rdi+8],0
jne       near ptr M01_L01
M01_L07
 
xor       ecx,ecx
mov       [rbp+48],rcx
xor       ecx,ecx
mov       [rbp+50],ecx
mov       rcx,rsi
lea       rdx,[rbp+48]
mov       r8d,ebx
mov       r9d,r14d
call      qword ptr [7FF9F5DB70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
jmp       near ptr M01_L02
M01_L08
 
mov       rcx,rsi
mov       edx,r14d
mov       r8d,ebx
call      qword ptr [7FF9F5DB7150]; System.String.CreateSplitArrayOfThisAsSoleValue(System.StringSplitOptions, Int32)
jmp       near ptr M01_L02
M01_L09
 
mov       ebx,1
jmp       near ptr M01_L01
M01_L10
 
test      [rsp],esp
sub       rsp,200
lea       rdx,[rsp+30]
mov       [rbp+38],rdx
mov       dword ptr [rbp+40],80
lea       rdx,[rbp+38]
lea       rcx,[rbp+98]
call      qword ptr [7FF9F659CF00]
test      [rsp],esp
sub       rsp,200
lea       rdx,[rsp+30]
mov       [rbp+38],rdx
mov       dword ptr [rbp+40],80
lea       rdx,[rbp+38]
lea       rcx,[rbp+78]
call      qword ptr [7FF9F659CF00]
lea       rcx,[rsi+0C]
mov       edx,[rsi+8]
test      rdi,rdi
jne       short M01_L11
xor       r8d,r8d
xor       r9d,r9d
jmp       short M01_L12
M01_L11
 
lea       r8,[rdi+10]
mov       r9d,[rdi+8]
M01_L12
 
mov       [rbp+48],rcx
mov       [rbp+50],edx
mov       [rbp+28],r8
mov       [rbp+30],r9d
lea       rcx,[rbp+48]
lea       rdx,[rbp+28]
lea       r8,[rbp+98]
lea       r9,[rbp+78]
call      qword ptr [7FF9F5DB71F8]
lea       rcx,[rbp+98]
lea       rdx,[rbp+68]
call      qword ptr [7FF9F659D008]
lea       rcx,[rbp+78]
lea       rdx,[rbp+58]
call      qword ptr [7FF9F659D008]
cmp       dword ptr [rbp+70],0
je        near ptr M01_L08
test      r14d,r14d
jne       short M01_L13
vmovdqu   xmm0,xmmword ptr [rbp+68]
vmovdqu   xmmword ptr [rbp+18],xmm0
vmovdqu   xmm0,xmmword ptr [rbp+58]
vmovdqu   xmmword ptr [rbp+8],xmm0
mov       [rsp+20],ebx
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
xor       r9d,r9d
call      qword ptr [7FF9F5DB7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       rdi,rax
jmp       short M01_L14
M01_L13
 
vmovdqu   xmm0,xmmword ptr [rbp+68]
vmovdqu   xmmword ptr [rbp+18],xmm0
vmovdqu   xmm0,xmmword ptr [rbp+58]
vmovdqu   xmmword ptr [rbp+8],xmm0
mov       [rsp+20],ebx
mov       [rsp+28],r14d
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
xor       r9d,r9d
call      qword ptr [7FF9F5DB7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       rdi,rax
M01_L14
 
mov       rdx,[rbp+98]
test      rdx,rdx
je        short M01_L15
xor       ecx,ecx
mov       [rbp+98],rcx
mov       rcx,174B4C01F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65B5240]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M01_L15
 
mov       rdx,[rbp+78]
test      rdx,rdx
je        short M01_L16
xor       ecx,ecx
mov       [rbp+78],rcx
mov       rcx,174B4C01F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65B5240]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M01_L16
 
mov       rax,rdi
jmp       near ptr M01_L02
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.Split()
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rcx,[rbx+298]
cmp       [rcx],cl
xor       edx,edx
mov       [rsp+20],edx
mov       rdx,26C8FC71C08
xor       r8d,r8d
mov       r9d,7FFFFFFF
call      qword ptr [7FF9F5DC7138]; System.String.SplitInternal(System.String, System.String[], Int32, System.StringSplitOptions)
mov       rsi,rax
xor       edi,edi
mov       ebp,[rsi+8]
test      ebp,ebp
jle       short M00_L01
M00_L00
 
mov       ecx,edi
mov       rcx,[rsi+rcx*8+10]
mov       [rsp+28],rcx
mov       r14,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[r14+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [r14+8],rax
inc       edi
cmp       ebp,edi
jg        short M00_L00
M00_L01
 
add       rsp,30
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
ret
 
System.String.SplitInternal(System.String, System.String[], Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,0E8
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
mov       rax,0FFFFFFFFFFFFFF70
M01_L00
 
vmovdqa   xmmword ptr [rbp+rax+0B0],xmm4
vmovdqa   xmmword ptr [rbp+rax+0C0],xmm4
vmovdqa   xmmword ptr [rbp+rax+0D0],xmm4
add       rax,30
jne       short M01_L00
mov       [rbp+0B0],rax
mov       rax,6ED7235ACD25
mov       [rbp],rax
mov       rsi,rcx
mov       rdi,r8
mov       ebx,r9d
mov       r14d,[rbp+110]
test      ebx,ebx
jl        short M01_L04
test      r14d,0FFFFFFFC
jne       near ptr M01_L05
xor       r15d,r15d
test      rdx,rdx
setne     r15b
test      r15d,r15d
je        near ptr M01_L06
M01_L01
 
cmp       ebx,1
jle       near ptr M01_L08
cmp       dword ptr [rsi+8],0
je        near ptr M01_L08
test      r15d,r15d
je        near ptr M01_L10
cmp       dword ptr [rdx+8],0
je        near ptr M01_L09
mov       rcx,rsi
mov       r8d,ebx
mov       r9d,r14d
call      qword ptr [7FF9F5DC7168]; System.String.SplitInternal(System.String, Int32, System.StringSplitOptions)
M01_L02
 
mov       rcx,6ED7235ACD25
cmp       [rbp],rcx
je        short M01_L03
call      CORINFO_HELP_FAIL_FAST
M01_L03
 
nop
lea       rsp,[rbp+0B8]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L04
 
mov       ecx,1C7
mov       rdx,7FF9F5C74000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,ebx
call      qword ptr [7FF9F688FBA0]
int       3
M01_L05
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F602ECB8]
int       3
M01_L06
 
test      rdi,rdi
je        short M01_L07
cmp       dword ptr [rdi+8],0
jne       near ptr M01_L01
M01_L07
 
xor       ecx,ecx
mov       [rbp+48],rcx
xor       ecx,ecx
mov       [rbp+50],ecx
mov       rcx,rsi
lea       rdx,[rbp+48]
mov       r8d,ebx
mov       r9d,r14d
call      qword ptr [7FF9F5DC70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
jmp       near ptr M01_L02
M01_L08
 
mov       rcx,rsi
mov       edx,r14d
mov       r8d,ebx
call      qword ptr [7FF9F5DC7150]; System.String.CreateSplitArrayOfThisAsSoleValue(System.StringSplitOptions, Int32)
jmp       near ptr M01_L02
M01_L09
 
mov       ebx,1
jmp       near ptr M01_L01
M01_L10
 
test      [rsp],esp
sub       rsp,200
lea       rdx,[rsp+30]
mov       [rbp+38],rdx
mov       dword ptr [rbp+40],80
lea       rdx,[rbp+38]
lea       rcx,[rbp+98]
call      qword ptr [7FF9F65ACF00]
test      [rsp],esp
sub       rsp,200
lea       rdx,[rsp+30]
mov       [rbp+38],rdx
mov       dword ptr [rbp+40],80
lea       rdx,[rbp+38]
lea       rcx,[rbp+78]
call      qword ptr [7FF9F65ACF00]
lea       rcx,[rsi+0C]
mov       edx,[rsi+8]
test      rdi,rdi
jne       short M01_L11
xor       r8d,r8d
xor       r9d,r9d
jmp       short M01_L12
M01_L11
 
lea       r8,[rdi+10]
mov       r9d,[rdi+8]
M01_L12
 
mov       [rbp+48],rcx
mov       [rbp+50],edx
mov       [rbp+28],r8
mov       [rbp+30],r9d
lea       rcx,[rbp+48]
lea       rdx,[rbp+28]
lea       r8,[rbp+98]
lea       r9,[rbp+78]
call      qword ptr [7FF9F5DC71F8]
lea       rcx,[rbp+98]
lea       rdx,[rbp+68]
call      qword ptr [7FF9F65AD008]
lea       rcx,[rbp+78]
lea       rdx,[rbp+58]
call      qword ptr [7FF9F65AD008]
cmp       dword ptr [rbp+70],0
je        near ptr M01_L08
test      r14d,r14d
jne       short M01_L13
vmovdqu   xmm0,xmmword ptr [rbp+68]
vmovdqu   xmmword ptr [rbp+18],xmm0
vmovdqu   xmm0,xmmword ptr [rbp+58]
vmovdqu   xmmword ptr [rbp+8],xmm0
mov       [rsp+20],ebx
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
xor       r9d,r9d
call      qword ptr [7FF9F5DC7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       rdi,rax
jmp       short M01_L14
M01_L13
 
vmovdqu   xmm0,xmmword ptr [rbp+68]
vmovdqu   xmmword ptr [rbp+18],xmm0
vmovdqu   xmm0,xmmword ptr [rbp+58]
vmovdqu   xmmword ptr [rbp+8],xmm0
mov       [rsp+20],ebx
mov       [rsp+28],r14d
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
xor       r9d,r9d
call      qword ptr [7FF9F5DC7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       rdi,rax
M01_L14
 
mov       rdx,[rbp+98]
test      rdx,rdx
je        short M01_L15
xor       ecx,ecx
mov       [rbp+98],rcx
mov       rcx,22BFDC01F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65C51C8]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M01_L15
 
mov       rdx,[rbp+78]
test      rdx,rdx
je        short M01_L16
xor       ecx,ecx
mov       [rbp+78],rcx
mov       rcx,22BFDC01F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65C51C8]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M01_L16
 
mov       rax,rdi
jmp       near ptr M01_L02
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.Split()
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rcx,[rbx+298]
cmp       [rcx],cl
xor       edx,edx
mov       [rsp+20],edx
mov       rdx,1E783C71C08
xor       r8d,r8d
mov       r9d,7FFFFFFF
call      qword ptr [7FF9F5DD7138]; System.String.SplitInternal(System.String, System.String[], Int32, System.StringSplitOptions)
mov       rsi,rax
xor       edi,edi
mov       ebp,[rsi+8]
test      ebp,ebp
jle       short M00_L01
M00_L00
 
mov       ecx,edi
mov       rcx,[rsi+rcx*8+10]
mov       [rsp+28],rcx
mov       r14,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[r14+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [r14+8],rax
inc       edi
cmp       ebp,edi
jg        short M00_L00
M00_L01
 
add       rsp,30
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
ret
 
System.String.SplitInternal(System.String, System.String[], Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,0E8
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
mov       rax,0FFFFFFFFFFFFFF70
M01_L00
 
vmovdqa   xmmword ptr [rbp+rax+0B0],xmm4
vmovdqa   xmmword ptr [rbp+rax+0C0],xmm4
vmovdqa   xmmword ptr [rbp+rax+0D0],xmm4
add       rax,30
jne       short M01_L00
mov       [rbp+0B0],rax
mov       rax,396C0E56F0CE
mov       [rbp],rax
mov       rsi,rcx
mov       rdi,r8
mov       ebx,r9d
mov       r14d,[rbp+110]
test      ebx,ebx
jl        short M01_L04
test      r14d,0FFFFFFFC
jne       near ptr M01_L05
xor       r15d,r15d
test      rdx,rdx
setne     r15b
test      r15d,r15d
je        near ptr M01_L06
M01_L01
 
cmp       ebx,1
jle       near ptr M01_L08
cmp       dword ptr [rsi+8],0
je        near ptr M01_L08
test      r15d,r15d
je        near ptr M01_L10
cmp       dword ptr [rdx+8],0
je        near ptr M01_L09
mov       rcx,rsi
mov       r8d,ebx
mov       r9d,r14d
call      qword ptr [7FF9F5DD7168]; System.String.SplitInternal(System.String, Int32, System.StringSplitOptions)
M01_L02
 
mov       rcx,396C0E56F0CE
cmp       [rbp],rcx
je        short M01_L03
call      CORINFO_HELP_FAIL_FAST
M01_L03
 
nop
lea       rsp,[rbp+0B8]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L04
 
mov       ecx,1C7
mov       rdx,7FF9F5C84000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,ebx
call      qword ptr [7FF9F689FBA0]
int       3
M01_L05
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F603ECB8]
int       3
M01_L06
 
test      rdi,rdi
je        short M01_L07
cmp       dword ptr [rdi+8],0
jne       near ptr M01_L01
M01_L07
 
xor       ecx,ecx
mov       [rbp+48],rcx
xor       ecx,ecx
mov       [rbp+50],ecx
mov       rcx,rsi
lea       rdx,[rbp+48]
mov       r8d,ebx
mov       r9d,r14d
call      qword ptr [7FF9F5DD70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
jmp       near ptr M01_L02
M01_L08
 
mov       rcx,rsi
mov       edx,r14d
mov       r8d,ebx
call      qword ptr [7FF9F5DD7150]; System.String.CreateSplitArrayOfThisAsSoleValue(System.StringSplitOptions, Int32)
jmp       near ptr M01_L02
M01_L09
 
mov       ebx,1
jmp       near ptr M01_L01
M01_L10
 
test      [rsp],esp
sub       rsp,200
lea       rdx,[rsp+30]
mov       [rbp+38],rdx
mov       dword ptr [rbp+40],80
lea       rdx,[rbp+38]
lea       rcx,[rbp+98]
call      qword ptr [7FF9F65BCF00]
test      [rsp],esp
sub       rsp,200
lea       rdx,[rsp+30]
mov       [rbp+38],rdx
mov       dword ptr [rbp+40],80
lea       rdx,[rbp+38]
lea       rcx,[rbp+78]
call      qword ptr [7FF9F65BCF00]
lea       rcx,[rsi+0C]
mov       edx,[rsi+8]
test      rdi,rdi
jne       short M01_L11
xor       r8d,r8d
xor       r9d,r9d
jmp       short M01_L12
M01_L11
 
lea       r8,[rdi+10]
mov       r9d,[rdi+8]
M01_L12
 
mov       [rbp+48],rcx
mov       [rbp+50],edx
mov       [rbp+28],r8
mov       [rbp+30],r9d
lea       rcx,[rbp+48]
lea       rdx,[rbp+28]
lea       r8,[rbp+98]
lea       r9,[rbp+78]
call      qword ptr [7FF9F5DD71F8]
lea       rcx,[rbp+98]
lea       rdx,[rbp+68]
call      qword ptr [7FF9F65BD008]
lea       rcx,[rbp+78]
lea       rdx,[rbp+58]
call      qword ptr [7FF9F65BD008]
cmp       dword ptr [rbp+70],0
je        near ptr M01_L08
test      r14d,r14d
jne       short M01_L13
vmovdqu   xmm0,xmmword ptr [rbp+68]
vmovdqu   xmmword ptr [rbp+18],xmm0
vmovdqu   xmm0,xmmword ptr [rbp+58]
vmovdqu   xmmword ptr [rbp+8],xmm0
mov       [rsp+20],ebx
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
xor       r9d,r9d
call      qword ptr [7FF9F5DD7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       rdi,rax
jmp       short M01_L14
M01_L13
 
vmovdqu   xmm0,xmmword ptr [rbp+68]
vmovdqu   xmmword ptr [rbp+18],xmm0
vmovdqu   xmm0,xmmword ptr [rbp+58]
vmovdqu   xmmword ptr [rbp+8],xmm0
mov       [rsp+20],ebx
mov       [rsp+28],r14d
mov       rcx,rsi
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
xor       r9d,r9d
call      qword ptr [7FF9F5DD7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       rdi,rax
M01_L14
 
mov       rdx,[rbp+98]
test      rdx,rdx
je        short M01_L15
xor       ecx,ecx
mov       [rbp+98],rcx
mov       rcx,1A6F1C01F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65D5180]; System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M01_L15
 
mov       rdx,[rbp+78]
test      rdx,rdx
je        short M01_L16
xor       ecx,ecx
mov       [rbp+78],rcx
mov       rcx,1A6F1C01F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65D5180]; System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M01_L16
 
mov       rax,rdi
jmp       near ptr M01_L02
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.SplitLines()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,48
vzeroupper
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+20],xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
xor       eax,eax
mov       [rsp+40],rax
mov       rbx,rcx
mov       rsi,[rbx+298]
test      rsi,rsi
je        short M00_L00
xor       ecx,ecx
cmp       dword ptr [rsi+8],0
sete      cl
test      ecx,ecx
sete      cl
movzx     ecx,cl
cmp       dword ptr [rsi+8],0
jne       short M00_L01
jmp       short M00_L01
M00_L00
 
xor       ecx,ecx
M00_L01
 
test      ecx,ecx
je        near ptr M00_L18
cmp       dword ptr [rsi+8],0
je        near ptr M00_L07
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       short M00_L04
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L20
jmp       short M00_L05
M00_L02
 
mov       [rsp+38],rdx
mov       [rsp+40],r8d
lea       rcx,[rsp+38]
call      qword ptr [7FF9F5E7C210]; System.ReadOnlySpan`1[[System.Char, System.Private.CoreLib]].ToString()
mov       [rsp+30],rax
mov       rsi,[rbx+18]
mov       rdx,[rsp+30]
lea       rcx,[rsi+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rsi+8],rax
M00_L03
 
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rsp+20],xmm0
mov       [rsp+20],rdi
mov       [rsp+28],ebp
cmp       dword ptr [rsp+28],0
jne       near ptr M00_L11
jmp       near ptr M00_L12
M00_L04
 
call      qword ptr [7FF9F68BEAF0]
test      eax,eax
jne       near ptr M00_L20
M00_L05
 
mov       ecx,[rsi+8]
dec       ecx
cmp       ecx,[rsi+8]
jae       near ptr M00_L21
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L06
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L20
jmp       short M00_L07
M00_L06
 
call      qword ptr [7FF9F68BEAF0]
test      eax,eax
jne       near ptr M00_L20
M00_L07
 
test      rsi,rsi
jne       short M00_L08
xor       edi,edi
xor       ebp,ebp
jmp       short M00_L09
M00_L08
 
lea       rdi,[rsi+0C]
mov       ebp,[rsi+8]
M00_L09
 
jmp       near ptr M00_L03
M00_L10
 
mov       edx,eax
inc       rdx
mov       r8d,[rsp+28]
cmp       rdx,r8
ja        near ptr M00_L16
jmp       near ptr M00_L15
M00_L11
 
mov       rcx,[rsp+20]
mov       r9d,[rsp+28]
mov       r8d,0A
mov       edx,0D
call      qword ptr [7FF9F614DAE8]; System.PackedSpanHelpers.IndexOfAny[[System.SpanHelpers+DontNegate`1[[System.Int16, System.Private.CoreLib]], System.Private.CoreLib]](Int16 ByRef, Int16, Int16, Int32)
cmp       eax,0FFFFFFFF
jne       short M00_L13
xor       edi,edi
xor       ebp,ebp
mov       rdx,[rsp+20]
mov       r8d,[rsp+28]
jmp       near ptr M00_L02
M00_L12
 
add       rsp,48
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L13
 
mov       ecx,1
mov       edx,[rsp+28]
sub       edx,1
jo        near ptr M00_L17
cmp       eax,edx
jge       short M00_L10
cmp       eax,[rsp+28]
jae       near ptr M00_L21
mov       rdx,[rsp+20]
mov       r8d,eax
cmp       word ptr [rdx+r8*2],0D
jne       near ptr M00_L10
mov       edx,eax
add       edx,1
jo        short M00_L17
cmp       edx,[rsp+28]
jae       near ptr M00_L21
mov       r8,[rsp+20]
cmp       word ptr [r8+rdx*2],0A
jne       near ptr M00_L10
mov       ecx,eax
add       rcx,2
mov       edx,[rsp+28]
cmp       rcx,rdx
ja        short M00_L16
mov       ecx,2
cmp       eax,[rsp+28]
ja        short M00_L16
M00_L14
 
mov       rdx,[rsp+20]
mov       r8d,eax
lea       rax,[rsp+20]
add       ecx,r8d
jo        short M00_L17
mov       r10d,[rax+8]
mov       ebp,r10d
sub       ebp,ecx
mov       r9d,ecx
mov       r11d,ebp
add       r9,r11
cmp       r9,r10
ja        short M00_L16
mov       rax,[rax]
lea       rdi,[rax+rcx*2]
jmp       near ptr M00_L02
M00_L15
 
cmp       eax,[rsp+28]
jbe       short M00_L14
M00_L16
 
call      qword ptr [7FF9F602E9D0]
int       3
M00_L17
 
call      CORINFO_HELP_OVERFLOW
M00_L18
 
call      qword ptr [7FF9F6345368]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L19
call      qword ptr [7FF9F63450B0]
mov       rbx,rax
M00_L19
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,23923DC8468
mov       r8,rbx
call      qword ptr [7FF9F6056670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L20
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DC73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L07
M00_L21
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.ReadOnlySpan`1[[System.Char, System.Private.CoreLib]].ToString()
sub       rsp,38
xor       eax,eax
mov       [rsp+28],rax
mov       rax,[rcx]
mov       ecx,[rcx+8]
mov       [rsp+28],rax
mov       [rsp+30],ecx
lea       rcx,[rsp+28]
call      System.String..ctor(System.ReadOnlySpan`1)
nop
add       rsp,38
ret
 
System.PackedSpanHelpers.IndexOfAny[[System.SpanHelpers+DontNegate`1[[System.Int16, System.Private.CoreLib]], System.Private.CoreLib]](Int16 ByRef, Int16, Int16, Int32)
vzeroupper
cmp       r9d,8
jl        near ptr M02_L03
mov       rax,rcx
cmp       r9d,10
jle       near ptr M02_L09
movzx     edx,dl
vmovd     xmm0,edx
vpbroadcastb ymm0,xmm0
movzx     r8d,r8b
vmovd     xmm1,r8d
vpbroadcastb ymm1,xmm1
cmp       r9d,20
jle       short M02_L01
lea       edx,[r9-20]
movsxd    rdx,edx
lea       rdx,[rax+rdx*2]
M02_L00
 
vmovups   ymm2,[rax]
vpackuswb ymm2,ymm2,[rax+20]
vpcmpeqb  ymm3,ymm0,ymm2
vpcmpeqb  ymm2,ymm1,ymm2
vpor      ymm2,ymm3,ymm2
vptest    ymm2,ymm2
jne       short M02_L06
add       rax,40
cmp       rax,rdx
jb        short M02_L00
M02_L01
 
add       r9d,0FFFFFFF0
movsxd    rdx,r9d
lea       rdx,[rcx+rdx*2]
cmp       rax,rdx
cmova     rax,rdx
vmovups   ymm2,[rax]
vpackuswb ymm2,ymm2,[rdx]
vpcmpeqb  ymm0,ymm0,ymm2
vpcmpeqb  ymm1,ymm1,ymm2
vpor      ymm0,ymm0,ymm1
vptest    ymm0,ymm0
jne       short M02_L07
M02_L02
 
mov       eax,0FFFFFFFF
jmp       short M02_L05
M02_L03
 
xor       eax,eax
cmp       r9d,4
jge       near ptr M02_L11
M02_L04
 
test      r9d,r9d
jg        near ptr M02_L24
jmp       short M02_L02
M02_L05
 
vzeroupper
ret
M02_L06
 
sub       rax,rcx
shr       rax,1
vpermq    ymm0,ymm2,0D8
vpmovmskb ecx,ymm0
xor       edx,edx
tzcnt     edx,ecx
add       eax,edx
jmp       short M02_L05
M02_L07
 
vpermq    ymm0,ymm0,0D8
vpmovmskb r8d,ymm0
xor       r9d,r9d
tzcnt     r9d,r8d
cmp       r9d,10
jl        short M02_L08
mov       rax,rdx
add       r9d,0FFFFFFF0
M02_L08
 
sub       rax,rcx
shr       rax,1
add       eax,r9d
jmp       short M02_L05
M02_L09
 
movzx     edx,dl
vmovd     xmm0,edx
vpbroadcastb xmm0,xmm0
movzx     edx,r8b
vmovd     xmm1,edx
vpbroadcastb xmm1,xmm1
lea       edx,[r9-8]
movsxd    rdx,edx
lea       rax,[rax+rdx*2]
cmp       rcx,rax
mov       rdx,rcx
cmova     rdx,rax
vmovups   xmm2,[rdx]
vpackuswb xmm2,xmm2,[rax]
vpcmpeqb  xmm0,xmm0,xmm2
vpcmpeqb  xmm1,xmm1,xmm2
vpor      xmm0,xmm0,xmm1
vptest    xmm0,xmm0
je        near ptr M02_L02
vpmovmskb r8d,xmm0
tzcnt     r8d,r8d
cmp       r8d,8
jl        short M02_L10
mov       rdx,rax
add       r8d,0FFFFFFF8
M02_L10
 
sub       rdx,rcx
shr       rdx,1
lea       eax,[rdx+r8]
jmp       near ptr M02_L05
M02_L11
 
add       r9d,0FFFFFFFC
movsx     r10,word ptr [rcx]
movsx     rax,dx
cmp       r10d,eax
je        short M02_L12
movsx     rax,r8w
cmp       r10d,eax
sete      al
movzx     eax,al
jmp       short M02_L13
M02_L12
 
mov       eax,1
M02_L13
 
test      al,al
je        short M02_L14
xor       eax,eax
vzeroupper
ret
M02_L14
 
movsx     r10,word ptr [rcx+2]
movsx     rax,dx
cmp       r10d,eax
je        short M02_L15
movsx     rax,r8w
cmp       r10d,eax
sete      al
movzx     eax,al
jmp       short M02_L16
M02_L15
 
mov       eax,1
M02_L16
 
test      al,al
je        short M02_L17
mov       eax,1
vzeroupper
ret
M02_L17
 
movsx     r10,word ptr [rcx+4]
movsx     rax,dx
cmp       r10d,eax
je        short M02_L18
movsx     rax,r8w
cmp       r10d,eax
sete      al
movzx     eax,al
jmp       short M02_L19
M02_L18
 
mov       eax,1
M02_L19
 
test      al,al
je        short M02_L20
mov       eax,2
vzeroupper
ret
M02_L20
 
movsx     r10,word ptr [rcx+6]
movsx     rax,dx
cmp       r10d,eax
je        short M02_L21
movsx     rax,r8w
cmp       r10d,eax
sete      r10b
movzx     r10d,r10b
jmp       short M02_L22
M02_L21
 
mov       r10d,1
M02_L22
 
test      r10b,r10b
je        short M02_L23
mov       eax,3
jmp       near ptr M02_L05
M02_L23
 
mov       eax,4
test      r9d,r9d
jle       near ptr M02_L02
M02_L24
 
dec       r9d
movsx     r10,word ptr [rcx+rax*2]
movsx     r11,dx
cmp       r10d,r11d
je        short M02_L25
movsx     r11,r8w
cmp       r10d,r11d
sete      r10b
movzx     r10d,r10b
jmp       short M02_L26
M02_L25
 
mov       r10d,1
M02_L26
 
test      r10b,r10b
je        short M02_L27
jmp       near ptr M02_L05
M02_L27
 
inc       rax
jmp       near ptr M02_L04
 
System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,edx
mov       edi,[rbx+8]
lea       ebp,[rdi-1]
mov       r14d,ebp
xor       r15d,r15d
test      sil,1
je        short M03_L03
xor       r15d,r15d
test      edi,edi
jle       short M03_L03
M03_L00
 
mov       ecx,r15d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M03_L01
mov       rax,[7FFA534C0728]
test      byte ptr [rax+rcx],80
je        short M03_L03
jmp       short M03_L02
M03_L01
 
call      qword ptr [7FFA534A7338]
test      eax,eax
je        short M03_L03
M03_L02
 
inc       r15d
cmp       edi,r15d
jg        short M03_L00
M03_L03
 
test      sil,2
je        near ptr M03_L10
mov       r14d,ebp
cmp       r14d,r15d
jl        short M03_L10
mov       ecx,r14d
or        ecx,r15d
jl        short M03_L07
cmp       edi,r14d
jle       short M03_L07
M03_L04
 
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M03_L05
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M03_L10
jmp       short M03_L06
M03_L05
 
call      qword ptr [7FFA534A7338]
test      eax,eax
je        short M03_L10
M03_L06
 
dec       r14d
cmp       r14d,r15d
jge       short M03_L04
jmp       short M03_L10
M03_L07
 
cmp       r14d,edi
jae       short M03_L14
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M03_L08
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M03_L10
jmp       short M03_L09
M03_L08
 
call      qword ptr [7FFA534A7338]
test      eax,eax
je        short M03_L10
M03_L09
 
dec       r14d
cmp       r14d,r15d
jge       short M03_L07
M03_L10
 
mov       r8d,r14d
sub       r8d,r15d
inc       r8d
cmp       edi,r8d
jne       short M03_L12
mov       rax,rbx
M03_L11
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L12
 
test      r8d,r8d
je        short M03_L13
mov       rcx,rbx
mov       edx,r15d
call      qword ptr [7FFA534A34A0]; Precode of System.String.InternalSubString(Int32, Int32)
jmp       short M03_L11
M03_L13
 
mov       rax,[7FFA534C08A0]
mov       rax,[rax]
jmp       short M03_L11
M03_L14
 
call      qword ptr [7FFA53493D20]; CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.SplitLines()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,48
vzeroupper
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+20],xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
xor       eax,eax
mov       [rsp+40],rax
mov       rbx,rcx
mov       rsi,[rbx+298]
test      rsi,rsi
je        near ptr M00_L04
xor       ecx,ecx
cmp       dword ptr [rsi+8],0
sete      cl
test      ecx,ecx
sete      cl
movzx     ecx,cl
cmp       dword ptr [rsi+8],0
jne       near ptr M00_L05
jmp       near ptr M00_L05
M00_L00
 
mov       [rsp+38],rdx
mov       [rsp+40],r8d
lea       rcx,[rsp+38]
call      qword ptr [7FF9F5E7C210]; System.ReadOnlySpan`1[[System.Char, System.Private.CoreLib]].ToString()
mov       [rsp+30],rax
mov       rsi,[rbx+18]
mov       rdx,[rsp+30]
lea       rcx,[rsi+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rsi+8],rax
M00_L01
 
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rsp+20],xmm0
mov       [rsp+20],rdi
mov       [rsp+28],ebp
cmp       dword ptr [rsp+28],0
je        near ptr M00_L12
mov       rcx,[rsp+20]
mov       r9d,[rsp+28]
mov       r8d,0A
mov       edx,0D
call      qword ptr [7FF9F614DAE8]; System.PackedSpanHelpers.IndexOfAny[[System.SpanHelpers+DontNegate`1[[System.Int16, System.Private.CoreLib]], System.Private.CoreLib]](Int16 ByRef, Int16, Int16, Int32)
cmp       eax,0FFFFFFFF
je        near ptr M00_L03
mov       ecx,1
mov       edx,[rsp+28]
sub       edx,1
jo        near ptr M00_L15
cmp       eax,edx
jge       near ptr M00_L13
cmp       eax,[rsp+28]
jae       near ptr M00_L19
mov       rdx,[rsp+20]
mov       r8d,eax
cmp       word ptr [rdx+r8*2],0D
jne       near ptr M00_L13
mov       edx,eax
add       edx,1
jo        near ptr M00_L15
cmp       edx,[rsp+28]
jae       near ptr M00_L19
mov       r8,[rsp+20]
cmp       word ptr [r8+rdx*2],0A
jne       near ptr M00_L13
mov       ecx,eax
add       rcx,2
mov       edx,[rsp+28]
cmp       rcx,rdx
ja        near ptr M00_L14
mov       ecx,2
cmp       eax,[rsp+28]
ja        near ptr M00_L14
M00_L02
 
mov       rdx,[rsp+20]
mov       r8d,eax
lea       rax,[rsp+20]
add       ecx,r8d
jo        near ptr M00_L15
mov       r10d,[rax+8]
mov       ebp,r10d
sub       ebp,ecx
mov       r9d,ecx
mov       r11d,ebp
add       r9,r11
cmp       r9,r10
ja        near ptr M00_L14
mov       rax,[rax]
lea       rdi,[rax+rcx*2]
jmp       near ptr M00_L00
M00_L03
 
xor       edi,edi
xor       ebp,ebp
mov       rdx,[rsp+20]
mov       r8d,[rsp+28]
jmp       near ptr M00_L00
M00_L04
 
xor       ecx,ecx
M00_L05
 
test      ecx,ecx
je        near ptr M00_L16
cmp       dword ptr [rsi+8],0
je        short M00_L09
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       short M00_L06
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L18
jmp       short M00_L07
M00_L06
 
call      qword ptr [7FF9F68BF1F8]
test      eax,eax
jne       near ptr M00_L18
M00_L07
 
mov       ecx,[rsi+8]
dec       ecx
cmp       ecx,[rsi+8]
jae       near ptr M00_L19
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L08
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L18
jmp       short M00_L09
M00_L08
 
call      qword ptr [7FF9F68BF1F8]
test      eax,eax
jne       near ptr M00_L18
M00_L09
 
test      rsi,rsi
jne       short M00_L10
xor       edi,edi
xor       ebp,ebp
jmp       short M00_L11
M00_L10
 
lea       rdi,[rsi+0C]
mov       ebp,[rsi+8]
M00_L11
 
jmp       near ptr M00_L01
M00_L12
 
add       rsp,48
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L13
 
mov       edx,eax
inc       rdx
mov       r8d,[rsp+28]
cmp       rdx,r8
ja        short M00_L14
cmp       eax,[rsp+28]
jbe       near ptr M00_L02
M00_L14
 
call      qword ptr [7FF9F602E9D0]
int       3
M00_L15
 
call      CORINFO_HELP_OVERFLOW
M00_L16
 
call      qword ptr [7FF9F6345368]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L17
call      qword ptr [7FF9F63450B0]
mov       rbx,rax
M00_L17
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,2438D628468
mov       r8,rbx
call      qword ptr [7FF9F6056670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L18
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DC73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L09
M00_L19
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.ReadOnlySpan`1[[System.Char, System.Private.CoreLib]].ToString()
sub       rsp,38
xor       eax,eax
mov       [rsp+28],rax
mov       rax,[rcx]
mov       ecx,[rcx+8]
mov       [rsp+28],rax
mov       [rsp+30],ecx
lea       rcx,[rsp+28]
call      System.String..ctor(System.ReadOnlySpan`1)
nop
add       rsp,38
ret
 
System.PackedSpanHelpers.IndexOfAny[[System.SpanHelpers+DontNegate`1[[System.Int16, System.Private.CoreLib]], System.Private.CoreLib]](Int16 ByRef, Int16, Int16, Int32)
vzeroupper
cmp       r9d,8
jl        near ptr M02_L06
mov       rax,rcx
cmp       r9d,10
jle       near ptr M02_L10
movzx     edx,dl
vmovd     xmm0,edx
vpbroadcastb ymm0,xmm0
movzx     r8d,r8b
vmovd     xmm1,r8d
vpbroadcastb ymm1,xmm1
cmp       r9d,20
jle       short M02_L01
lea       edx,[r9-20]
movsxd    rdx,edx
lea       rdx,[rax+rdx*2]
M02_L00
 
vmovups   ymm2,[rax]
vpackuswb ymm2,ymm2,[rax+20]
vpcmpeqb  ymm3,ymm0,ymm2
vpcmpeqb  ymm2,ymm1,ymm2
vpor      ymm2,ymm3,ymm2
vptest    ymm2,ymm2
jne       short M02_L02
add       rax,40
cmp       rax,rdx
jb        short M02_L00
M02_L01
 
add       r9d,0FFFFFFF0
movsxd    rdx,r9d
lea       rdx,[rcx+rdx*2]
cmp       rax,rdx
cmova     rax,rdx
jmp       short M02_L04
M02_L02
 
sub       rax,rcx
shr       rax,1
vpermq    ymm0,ymm2,0D8
vpmovmskb edx,ymm0
xor       ecx,ecx
tzcnt     ecx,edx
add       eax,ecx
M02_L03
 
vzeroupper
ret
M02_L04
 
vmovups   ymm2,[rax]
vpackuswb ymm2,ymm2,[rdx]
vpcmpeqb  ymm0,ymm0,ymm2
vpcmpeqb  ymm1,ymm1,ymm2
vpor      ymm0,ymm0,ymm1
vptest    ymm0,ymm0
jne       short M02_L08
M02_L05
 
mov       eax,0FFFFFFFF
jmp       short M02_L03
M02_L06
 
xor       eax,eax
cmp       r9d,4
jge       near ptr M02_L12
M02_L07
 
test      r9d,r9d
jg        near ptr M02_L25
jmp       short M02_L05
M02_L08
 
vpermq    ymm0,ymm0,0D8
vpmovmskb r8d,ymm0
xor       r9d,r9d
tzcnt     r9d,r8d
cmp       r9d,10
jl        short M02_L09
mov       rax,rdx
add       r9d,0FFFFFFF0
M02_L09
 
sub       rax,rcx
shr       rax,1
add       eax,r9d
jmp       short M02_L03
M02_L10
 
movzx     edx,dl
vmovd     xmm0,edx
vpbroadcastb xmm0,xmm0
movzx     edx,r8b
vmovd     xmm1,edx
vpbroadcastb xmm1,xmm1
lea       edx,[r9-8]
movsxd    rdx,edx
lea       rax,[rax+rdx*2]
cmp       rcx,rax
mov       rdx,rcx
cmova     rdx,rax
vmovups   xmm2,[rdx]
vpackuswb xmm2,xmm2,[rax]
vpcmpeqb  xmm0,xmm0,xmm2
vpcmpeqb  xmm1,xmm1,xmm2
vpor      xmm0,xmm0,xmm1
vptest    xmm0,xmm0
je        near ptr M02_L05
vpmovmskb r8d,xmm0
tzcnt     r8d,r8d
cmp       r8d,8
jl        short M02_L11
mov       rdx,rax
add       r8d,0FFFFFFF8
M02_L11
 
sub       rdx,rcx
shr       rdx,1
lea       eax,[rdx+r8]
jmp       near ptr M02_L03
M02_L12
 
add       r9d,0FFFFFFFC
movsx     r10,word ptr [rcx]
movsx     rax,dx
cmp       r10d,eax
je        short M02_L13
movsx     rax,r8w
cmp       r10d,eax
sete      al
movzx     eax,al
jmp       short M02_L14
M02_L13
 
mov       eax,1
M02_L14
 
test      al,al
je        short M02_L15
xor       eax,eax
vzeroupper
ret
M02_L15
 
movsx     r10,word ptr [rcx+2]
movsx     rax,dx
cmp       r10d,eax
je        short M02_L16
movsx     rax,r8w
cmp       r10d,eax
sete      al
movzx     eax,al
jmp       short M02_L17
M02_L16
 
mov       eax,1
M02_L17
 
test      al,al
je        short M02_L18
mov       eax,1
vzeroupper
ret
M02_L18
 
movsx     r10,word ptr [rcx+4]
movsx     rax,dx
cmp       r10d,eax
je        short M02_L19
movsx     rax,r8w
cmp       r10d,eax
sete      al
movzx     eax,al
jmp       short M02_L20
M02_L19
 
mov       eax,1
M02_L20
 
test      al,al
je        short M02_L21
mov       eax,2
vzeroupper
ret
M02_L21
 
movsx     r10,word ptr [rcx+6]
movsx     rax,dx
cmp       r10d,eax
je        short M02_L22
movsx     rax,r8w
cmp       r10d,eax
sete      r10b
movzx     r10d,r10b
jmp       short M02_L23
M02_L22
 
mov       r10d,1
M02_L23
 
test      r10b,r10b
je        short M02_L24
mov       eax,3
jmp       near ptr M02_L03
M02_L24
 
mov       eax,4
test      r9d,r9d
jle       near ptr M02_L05
M02_L25
 
dec       r9d
movsx     r10,word ptr [rcx+rax*2]
movsx     r11,dx
cmp       r10d,r11d
je        short M02_L26
movsx     r11,r8w
cmp       r10d,r11d
sete      r10b
movzx     r10d,r10b
jmp       short M02_L27
M02_L26
 
mov       r10d,1
M02_L27
 
test      r10b,r10b
je        short M02_L28
jmp       near ptr M02_L03
M02_L28
 
inc       rax
jmp       near ptr M02_L07
 
System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,edx
mov       edi,[rbx+8]
lea       ebp,[rdi-1]
mov       r14d,ebp
xor       r15d,r15d
test      sil,1
je        short M03_L03
xor       r15d,r15d
test      edi,edi
jle       short M03_L03
M03_L00
 
mov       ecx,r15d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M03_L01
mov       rax,[7FFA534C0728]
test      byte ptr [rax+rcx],80
je        short M03_L03
jmp       short M03_L02
M03_L01
 
call      qword ptr [7FFA534A7338]
test      eax,eax
je        short M03_L03
M03_L02
 
inc       r15d
cmp       edi,r15d
jg        short M03_L00
M03_L03
 
test      sil,2
je        near ptr M03_L10
mov       r14d,ebp
cmp       r14d,r15d
jl        short M03_L10
mov       ecx,r14d
or        ecx,r15d
jl        short M03_L07
cmp       edi,r14d
jle       short M03_L07
M03_L04
 
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M03_L05
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M03_L10
jmp       short M03_L06
M03_L05
 
call      qword ptr [7FFA534A7338]
test      eax,eax
je        short M03_L10
M03_L06
 
dec       r14d
cmp       r14d,r15d
jge       short M03_L04
jmp       short M03_L10
M03_L07
 
cmp       r14d,edi
jae       short M03_L14
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M03_L08
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M03_L10
jmp       short M03_L09
M03_L08
 
call      qword ptr [7FFA534A7338]
test      eax,eax
je        short M03_L10
M03_L09
 
dec       r14d
cmp       r14d,r15d
jge       short M03_L07
M03_L10
 
mov       r8d,r14d
sub       r8d,r15d
inc       r8d
cmp       edi,r8d
jne       short M03_L12
mov       rax,rbx
M03_L11
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L12
 
test      r8d,r8d
je        short M03_L13
mov       rcx,rbx
mov       edx,r15d
call      qword ptr [7FFA534A34A0]; Precode of System.String.InternalSubString(Int32, Int32)
jmp       short M03_L11
M03_L13
 
mov       rax,[7FFA534C08A0]
mov       rax,[rax]
jmp       short M03_L11
M03_L14
 
call      qword ptr [7FFA53493D20]; CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.SplitLines()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,48
vzeroupper
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+20],xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
xor       eax,eax
mov       [rsp+40],rax
mov       rbx,rcx
mov       rsi,[rbx+298]
test      rsi,rsi
je        short M00_L00
xor       ecx,ecx
cmp       dword ptr [rsi+8],0
sete      cl
test      ecx,ecx
sete      cl
movzx     ecx,cl
cmp       dword ptr [rsi+8],0
jne       short M00_L01
jmp       short M00_L01
M00_L00
 
xor       ecx,ecx
M00_L01
 
test      ecx,ecx
je        near ptr M00_L16
cmp       dword ptr [rsi+8],0
je        near ptr M00_L09
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       near ptr M00_L05
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L18
jmp       near ptr M00_L06
M00_L02
 
mov       [rsp+38],rdx
mov       [rsp+40],r8d
lea       rcx,[rsp+38]
call      qword ptr [7FF9F5E7C210]; System.ReadOnlySpan`1[[System.Char, System.Private.CoreLib]].ToString()
mov       [rsp+30],rax
mov       rsi,[rbx+18]
mov       rdx,[rsp+30]
lea       rcx,[rsi+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rsi+8],rax
M00_L03
 
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rsp+20],xmm0
mov       [rsp+20],rdi
mov       [rsp+28],ebp
cmp       dword ptr [rsp+28],0
je        near ptr M00_L12
mov       rcx,[rsp+20]
mov       r9d,[rsp+28]
mov       r8d,0A
mov       edx,0D
call      qword ptr [7FF9F614DAE8]; System.PackedSpanHelpers.IndexOfAny[[System.SpanHelpers+DontNegate`1[[System.Int16, System.Private.CoreLib]], System.Private.CoreLib]](Int16 ByRef, Int16, Int16, Int32)
cmp       eax,0FFFFFFFF
je        near ptr M00_L07
mov       ecx,1
mov       edx,[rsp+28]
sub       edx,1
jo        near ptr M00_L15
cmp       eax,edx
jge       near ptr M00_L13
cmp       eax,[rsp+28]
jae       near ptr M00_L19
mov       rdx,[rsp+20]
mov       r8d,eax
cmp       word ptr [rdx+r8*2],0D
jne       near ptr M00_L13
mov       edx,eax
add       edx,1
jo        near ptr M00_L15
cmp       edx,[rsp+28]
jae       near ptr M00_L19
mov       r8,[rsp+20]
cmp       word ptr [r8+rdx*2],0A
jne       near ptr M00_L13
mov       ecx,eax
add       rcx,2
mov       edx,[rsp+28]
cmp       rcx,rdx
ja        near ptr M00_L14
mov       ecx,2
cmp       eax,[rsp+28]
ja        near ptr M00_L14
M00_L04
 
mov       rdx,[rsp+20]
mov       r8d,eax
lea       rax,[rsp+20]
add       ecx,r8d
jo        near ptr M00_L15
mov       r10d,[rax+8]
mov       ebp,r10d
sub       ebp,ecx
mov       r9d,ecx
mov       r11d,ebp
add       r9,r11
cmp       r9,r10
ja        near ptr M00_L14
mov       rax,[rax]
lea       rdi,[rax+rcx*2]
jmp       near ptr M00_L02
M00_L05
 
call      qword ptr [7FF9F671E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L18
M00_L06
 
mov       ecx,[rsi+8]
dec       ecx
cmp       ecx,[rsi+8]
jae       near ptr M00_L19
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L08
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L18
jmp       short M00_L09
M00_L07
 
xor       edi,edi
xor       ebp,ebp
mov       rdx,[rsp+20]
mov       r8d,[rsp+28]
jmp       near ptr M00_L02
M00_L08
 
call      qword ptr [7FF9F671E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L18
M00_L09
 
test      rsi,rsi
jne       short M00_L10
xor       edi,edi
xor       ebp,ebp
jmp       short M00_L11
M00_L10
 
lea       rdi,[rsi+0C]
mov       ebp,[rsi+8]
M00_L11
 
jmp       near ptr M00_L03
M00_L12
 
add       rsp,48
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L13
 
mov       edx,eax
inc       rdx
mov       r8d,[rsp+28]
cmp       rdx,r8
ja        short M00_L14
cmp       eax,[rsp+28]
jbe       near ptr M00_L04
M00_L14
 
call      qword ptr [7FF9F602E9D0]
int       3
M00_L15
 
call      CORINFO_HELP_OVERFLOW
M00_L16
 
call      qword ptr [7FF9F6345368]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L17
call      qword ptr [7FF9F63450B0]
mov       rbx,rax
M00_L17
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,1B2F6628468
mov       r8,rbx
call      qword ptr [7FF9F6056670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L18
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DC73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L09
M00_L19
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.ReadOnlySpan`1[[System.Char, System.Private.CoreLib]].ToString()
sub       rsp,38
xor       eax,eax
mov       [rsp+28],rax
mov       rax,[rcx]
mov       ecx,[rcx+8]
mov       [rsp+28],rax
mov       [rsp+30],ecx
lea       rcx,[rsp+28]
call      System.String..ctor(System.ReadOnlySpan`1)
nop
add       rsp,38
ret
 
System.PackedSpanHelpers.IndexOfAny[[System.SpanHelpers+DontNegate`1[[System.Int16, System.Private.CoreLib]], System.Private.CoreLib]](Int16 ByRef, Int16, Int16, Int32)
vzeroupper
cmp       r9d,8
jl        near ptr M02_L06
mov       rax,rcx
cmp       r9d,10
jle       near ptr M02_L10
movzx     edx,dl
vmovd     xmm0,edx
vpbroadcastb ymm0,xmm0
movzx     r8d,r8b
vmovd     xmm1,r8d
vpbroadcastb ymm1,xmm1
cmp       r9d,20
jle       short M02_L01
lea       edx,[r9-20]
movsxd    rdx,edx
lea       rdx,[rax+rdx*2]
M02_L00
 
vmovups   ymm2,[rax]
vpackuswb ymm2,ymm2,[rax+20]
vpcmpeqb  ymm3,ymm0,ymm2
vpcmpeqb  ymm2,ymm1,ymm2
vpor      ymm2,ymm3,ymm2
vptest    ymm2,ymm2
jne       short M02_L02
add       rax,40
cmp       rax,rdx
jb        short M02_L00
M02_L01
 
add       r9d,0FFFFFFF0
movsxd    rdx,r9d
lea       rdx,[rcx+rdx*2]
cmp       rax,rdx
cmova     rax,rdx
jmp       short M02_L04
M02_L02
 
sub       rax,rcx
shr       rax,1
vpermq    ymm0,ymm2,0D8
vpmovmskb edx,ymm0
xor       ecx,ecx
tzcnt     ecx,edx
add       eax,ecx
M02_L03
 
vzeroupper
ret
M02_L04
 
vmovups   ymm2,[rax]
vpackuswb ymm2,ymm2,[rdx]
vpcmpeqb  ymm0,ymm0,ymm2
vpcmpeqb  ymm1,ymm1,ymm2
vpor      ymm0,ymm0,ymm1
vptest    ymm0,ymm0
jne       short M02_L08
M02_L05
 
mov       eax,0FFFFFFFF
jmp       short M02_L03
M02_L06
 
xor       eax,eax
cmp       r9d,4
jge       near ptr M02_L12
M02_L07
 
test      r9d,r9d
jg        near ptr M02_L25
jmp       short M02_L05
M02_L08
 
vpermq    ymm0,ymm0,0D8
vpmovmskb r8d,ymm0
xor       r9d,r9d
tzcnt     r9d,r8d
cmp       r9d,10
jl        short M02_L09
mov       rax,rdx
add       r9d,0FFFFFFF0
M02_L09
 
sub       rax,rcx
shr       rax,1
add       eax,r9d
jmp       short M02_L03
M02_L10
 
movzx     edx,dl
vmovd     xmm0,edx
vpbroadcastb xmm0,xmm0
movzx     edx,r8b
vmovd     xmm1,edx
vpbroadcastb xmm1,xmm1
lea       edx,[r9-8]
movsxd    rdx,edx
lea       rax,[rax+rdx*2]
cmp       rcx,rax
mov       rdx,rcx
cmova     rdx,rax
vmovups   xmm2,[rdx]
vpackuswb xmm2,xmm2,[rax]
vpcmpeqb  xmm0,xmm0,xmm2
vpcmpeqb  xmm1,xmm1,xmm2
vpor      xmm0,xmm0,xmm1
vptest    xmm0,xmm0
je        near ptr M02_L05
vpmovmskb r8d,xmm0
tzcnt     r8d,r8d
cmp       r8d,8
jl        short M02_L11
mov       rdx,rax
add       r8d,0FFFFFFF8
M02_L11
 
sub       rdx,rcx
shr       rdx,1
lea       eax,[rdx+r8]
jmp       near ptr M02_L03
M02_L12
 
add       r9d,0FFFFFFFC
movsx     r10,word ptr [rcx]
movsx     rax,dx
cmp       r10d,eax
je        short M02_L13
movsx     rax,r8w
cmp       r10d,eax
sete      al
movzx     eax,al
jmp       short M02_L14
M02_L13
 
mov       eax,1
M02_L14
 
test      al,al
je        short M02_L15
xor       eax,eax
vzeroupper
ret
M02_L15
 
movsx     r10,word ptr [rcx+2]
movsx     rax,dx
cmp       r10d,eax
je        short M02_L16
movsx     rax,r8w
cmp       r10d,eax
sete      al
movzx     eax,al
jmp       short M02_L17
M02_L16
 
mov       eax,1
M02_L17
 
test      al,al
je        short M02_L18
mov       eax,1
vzeroupper
ret
M02_L18
 
movsx     r10,word ptr [rcx+4]
movsx     rax,dx
cmp       r10d,eax
je        short M02_L19
movsx     rax,r8w
cmp       r10d,eax
sete      al
movzx     eax,al
jmp       short M02_L20
M02_L19
 
mov       eax,1
M02_L20
 
test      al,al
je        short M02_L21
mov       eax,2
vzeroupper
ret
M02_L21
 
movsx     r10,word ptr [rcx+6]
movsx     rax,dx
cmp       r10d,eax
je        short M02_L22
movsx     rax,r8w
cmp       r10d,eax
sete      r10b
movzx     r10d,r10b
jmp       short M02_L23
M02_L22
 
mov       r10d,1
M02_L23
 
test      r10b,r10b
je        short M02_L24
mov       eax,3
jmp       near ptr M02_L03
M02_L24
 
mov       eax,4
test      r9d,r9d
jle       near ptr M02_L05
M02_L25
 
dec       r9d
movsx     r10,word ptr [rcx+rax*2]
movsx     r11,dx
cmp       r10d,r11d
je        short M02_L26
movsx     r11,r8w
cmp       r10d,r11d
sete      r10b
movzx     r10d,r10b
jmp       short M02_L27
M02_L26
 
mov       r10d,1
M02_L27
 
test      r10b,r10b
je        short M02_L28
jmp       near ptr M02_L03
M02_L28
 
inc       rax
jmp       near ptr M02_L07
 
System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
sub       rsp,28
movzx     ecx,cx
call      qword ptr [7FFA534A7370]; Precode of System.Globalization.CharUnicodeInfo.GetCategoryCasingTableOffsetNoBoundsChecks(UInt32)
mov       rcx,[7FFA534C0750]
cmp       byte ptr [rcx+rax],0
setl      al
movzx     eax,al
add       rsp,28
ret
 
System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,edx
mov       edi,[rbx+8]
lea       ebp,[rdi-1]
mov       r14d,ebp
xor       r15d,r15d
test      sil,1
je        short M04_L03
xor       r15d,r15d
test      edi,edi
jle       short M04_L03
M04_L00
 
mov       ecx,r15d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L01
mov       rax,[7FFA534C0728]
test      byte ptr [rax+rcx],80
je        short M04_L03
jmp       short M04_L02
M04_L01
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L03
M04_L02
 
inc       r15d
cmp       edi,r15d
jg        short M04_L00
M04_L03
 
test      sil,2
je        near ptr M04_L10
mov       r14d,ebp
cmp       r14d,r15d
jl        short M04_L10
mov       ecx,r14d
or        ecx,r15d
jl        short M04_L07
cmp       edi,r14d
jle       short M04_L07
M04_L04
 
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L05
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L06
M04_L05
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L06
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L04
jmp       short M04_L10
M04_L07
 
cmp       r14d,edi
jae       short M04_L14
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L08
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L09
M04_L08
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L09
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L07
M04_L10
 
mov       r8d,r14d
sub       r8d,r15d
inc       r8d
cmp       edi,r8d
jne       short M04_L12
mov       rax,rbx
M04_L11
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L12
 
test      r8d,r8d
je        short M04_L13
mov       rcx,rbx
mov       edx,r15d
call      qword ptr [7FFA534A34A0]; Precode of System.String.InternalSubString(Int32, Int32)
jmp       short M04_L11
M04_L13
 
mov       rax,[7FFA534C08A0]
mov       rax,[rax]
jmp       short M04_L11
M04_L14
 
call      qword ptr [7FFA53493D20]; CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.SplitLines()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,48
vzeroupper
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+20],xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
xor       eax,eax
mov       [rsp+40],rax
mov       rbx,rcx
mov       rsi,[rbx+298]
test      rsi,rsi
je        short M00_L00
xor       ecx,ecx
cmp       dword ptr [rsi+8],0
sete      cl
test      ecx,ecx
sete      cl
movzx     ecx,cl
cmp       dword ptr [rsi+8],0
jne       short M00_L01
jmp       short M00_L01
M00_L00
 
xor       ecx,ecx
M00_L01
 
test      ecx,ecx
je        near ptr M00_L16
cmp       dword ptr [rsi+8],0
je        near ptr M00_L10
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       near ptr M00_L05
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L18
jmp       near ptr M00_L06
M00_L02
 
mov       [rsp+38],rdx
mov       [rsp+40],r8d
lea       rcx,[rsp+38]
call      qword ptr [7FF9F5E9C210]; System.ReadOnlySpan`1[[System.Char, System.Private.CoreLib]].ToString()
mov       [rsp+30],rax
mov       rsi,[rbx+18]
mov       rdx,[rsp+30]
lea       rcx,[rsi+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rsi+8],rax
M00_L03
 
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rsp+20],xmm0
mov       [rsp+20],rdi
mov       [rsp+28],ebp
cmp       dword ptr [rsp+28],0
je        near ptr M00_L09
mov       rcx,[rsp+20]
mov       r9d,[rsp+28]
mov       r8d,0A
mov       edx,0D
call      qword ptr [7FF9F616DAE8]; System.PackedSpanHelpers.IndexOfAny[[System.SpanHelpers+DontNegate`1[[System.Int16, System.Private.CoreLib]], System.Private.CoreLib]](Int16 ByRef, Int16, Int16, Int32)
cmp       eax,0FFFFFFFF
je        near ptr M00_L07
mov       ecx,1
mov       edx,[rsp+28]
sub       edx,1
jo        near ptr M00_L15
cmp       eax,edx
jge       near ptr M00_L13
cmp       eax,[rsp+28]
jae       near ptr M00_L19
mov       rdx,[rsp+20]
mov       r8d,eax
cmp       word ptr [rdx+r8*2],0D
jne       near ptr M00_L13
mov       edx,eax
add       edx,1
jo        near ptr M00_L15
cmp       edx,[rsp+28]
jae       near ptr M00_L19
mov       r8,[rsp+20]
cmp       word ptr [r8+rdx*2],0A
jne       near ptr M00_L13
mov       ecx,eax
add       rcx,2
mov       edx,[rsp+28]
cmp       rcx,rdx
ja        near ptr M00_L14
mov       ecx,2
cmp       eax,[rsp+28]
ja        near ptr M00_L14
M00_L04
 
mov       rdx,[rsp+20]
mov       r8d,eax
lea       rax,[rsp+20]
add       ecx,r8d
jo        near ptr M00_L15
mov       r10d,[rax+8]
mov       ebp,r10d
sub       ebp,ecx
mov       r9d,ecx
mov       r11d,ebp
add       r9,r11
cmp       r9,r10
ja        near ptr M00_L14
mov       rax,[rax]
lea       rdi,[rax+rcx*2]
jmp       near ptr M00_L02
M00_L05
 
call      qword ptr [7FF9F673E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L18
M00_L06
 
mov       ecx,[rsi+8]
dec       ecx
cmp       ecx,[rsi+8]
jae       near ptr M00_L19
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L08
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L18
jmp       short M00_L10
M00_L07
 
xor       edi,edi
xor       ebp,ebp
mov       rdx,[rsp+20]
mov       r8d,[rsp+28]
jmp       near ptr M00_L02
M00_L08
 
call      qword ptr [7FF9F673E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L18
jmp       short M00_L10
M00_L09
 
add       rsp,48
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L10
 
test      rsi,rsi
jne       short M00_L11
xor       edi,edi
xor       ebp,ebp
jmp       short M00_L12
M00_L11
 
lea       rdi,[rsi+0C]
mov       ebp,[rsi+8]
M00_L12
 
jmp       near ptr M00_L03
M00_L13
 
mov       edx,eax
inc       rdx
mov       r8d,[rsp+28]
cmp       rdx,r8
ja        short M00_L14
cmp       eax,[rsp+28]
jbe       near ptr M00_L04
M00_L14
 
call      qword ptr [7FF9F604E9D0]
int       3
M00_L15
 
call      CORINFO_HELP_OVERFLOW
M00_L16
 
call      qword ptr [7FF9F6365368]
mov       rsi,rax
test      rsi,rsi
jne       short M00_L17
call      qword ptr [7FF9F63650B0]
mov       rsi,rax
M00_L17
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,1507C028468
mov       r8,rsi
call      qword ptr [7FF9F6076670]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M00_L18
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DE73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L10
M00_L19
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.ReadOnlySpan`1[[System.Char, System.Private.CoreLib]].ToString()
sub       rsp,38
xor       eax,eax
mov       [rsp+28],rax
mov       rax,[rcx]
mov       ecx,[rcx+8]
mov       [rsp+28],rax
mov       [rsp+30],ecx
lea       rcx,[rsp+28]
call      System.String..ctor(System.ReadOnlySpan`1)
nop
add       rsp,38
ret
 
System.PackedSpanHelpers.IndexOfAny[[System.SpanHelpers+DontNegate`1[[System.Int16, System.Private.CoreLib]], System.Private.CoreLib]](Int16 ByRef, Int16, Int16, Int32)
vzeroupper
cmp       r9d,8
jl        near ptr M02_L06
mov       rax,rcx
cmp       r9d,10
jle       near ptr M02_L10
movzx     edx,dl
vmovd     xmm0,edx
vpbroadcastb ymm0,xmm0
movzx     r8d,r8b
vmovd     xmm1,r8d
vpbroadcastb ymm1,xmm1
cmp       r9d,20
jle       short M02_L01
lea       edx,[r9-20]
movsxd    rdx,edx
lea       rdx,[rax+rdx*2]
M02_L00
 
vmovups   ymm2,[rax]
vpackuswb ymm2,ymm2,[rax+20]
vpcmpeqb  ymm3,ymm0,ymm2
vpcmpeqb  ymm2,ymm1,ymm2
vpor      ymm2,ymm3,ymm2
vptest    ymm2,ymm2
jne       short M02_L02
add       rax,40
cmp       rax,rdx
jb        short M02_L00
M02_L01
 
add       r9d,0FFFFFFF0
movsxd    rdx,r9d
lea       rdx,[rcx+rdx*2]
cmp       rax,rdx
cmova     rax,rdx
jmp       short M02_L04
M02_L02
 
sub       rax,rcx
shr       rax,1
vpermq    ymm0,ymm2,0D8
vpmovmskb edx,ymm0
xor       ecx,ecx
tzcnt     ecx,edx
add       eax,ecx
M02_L03
 
vzeroupper
ret
M02_L04
 
vmovups   ymm2,[rax]
vpackuswb ymm2,ymm2,[rdx]
vpcmpeqb  ymm0,ymm0,ymm2
vpcmpeqb  ymm1,ymm1,ymm2
vpor      ymm0,ymm0,ymm1
vptest    ymm0,ymm0
jne       short M02_L08
M02_L05
 
mov       eax,0FFFFFFFF
jmp       short M02_L03
M02_L06
 
xor       eax,eax
cmp       r9d,4
jge       near ptr M02_L12
M02_L07
 
test      r9d,r9d
jg        near ptr M02_L25
jmp       short M02_L05
M02_L08
 
vpermq    ymm0,ymm0,0D8
vpmovmskb r8d,ymm0
xor       r9d,r9d
tzcnt     r9d,r8d
cmp       r9d,10
jl        short M02_L09
mov       rax,rdx
add       r9d,0FFFFFFF0
M02_L09
 
sub       rax,rcx
shr       rax,1
add       eax,r9d
jmp       short M02_L03
M02_L10
 
movzx     edx,dl
vmovd     xmm0,edx
vpbroadcastb xmm0,xmm0
movzx     edx,r8b
vmovd     xmm1,edx
vpbroadcastb xmm1,xmm1
lea       edx,[r9-8]
movsxd    rdx,edx
lea       rax,[rax+rdx*2]
cmp       rcx,rax
mov       rdx,rcx
cmova     rdx,rax
vmovups   xmm2,[rdx]
vpackuswb xmm2,xmm2,[rax]
vpcmpeqb  xmm0,xmm0,xmm2
vpcmpeqb  xmm1,xmm1,xmm2
vpor      xmm0,xmm0,xmm1
vptest    xmm0,xmm0
je        near ptr M02_L05
vpmovmskb r8d,xmm0
tzcnt     r8d,r8d
cmp       r8d,8
jl        short M02_L11
mov       rdx,rax
add       r8d,0FFFFFFF8
M02_L11
 
sub       rdx,rcx
shr       rdx,1
lea       eax,[rdx+r8]
jmp       near ptr M02_L03
M02_L12
 
add       r9d,0FFFFFFFC
movsx     r10,word ptr [rcx]
movsx     rax,dx
cmp       r10d,eax
je        short M02_L13
movsx     rax,r8w
cmp       r10d,eax
sete      al
movzx     eax,al
jmp       short M02_L14
M02_L13
 
mov       eax,1
M02_L14
 
test      al,al
je        short M02_L15
xor       eax,eax
vzeroupper
ret
M02_L15
 
movsx     r10,word ptr [rcx+2]
movsx     rax,dx
cmp       r10d,eax
je        short M02_L16
movsx     rax,r8w
cmp       r10d,eax
sete      al
movzx     eax,al
jmp       short M02_L17
M02_L16
 
mov       eax,1
M02_L17
 
test      al,al
je        short M02_L18
mov       eax,1
vzeroupper
ret
M02_L18
 
movsx     r10,word ptr [rcx+4]
movsx     rax,dx
cmp       r10d,eax
je        short M02_L19
movsx     rax,r8w
cmp       r10d,eax
sete      al
movzx     eax,al
jmp       short M02_L20
M02_L19
 
mov       eax,1
M02_L20
 
test      al,al
je        short M02_L21
mov       eax,2
vzeroupper
ret
M02_L21
 
movsx     r10,word ptr [rcx+6]
movsx     rax,dx
cmp       r10d,eax
je        short M02_L22
movsx     rax,r8w
cmp       r10d,eax
sete      r10b
movzx     r10d,r10b
jmp       short M02_L23
M02_L22
 
mov       r10d,1
M02_L23
 
test      r10b,r10b
je        short M02_L24
mov       eax,3
jmp       near ptr M02_L03
M02_L24
 
mov       eax,4
test      r9d,r9d
jle       near ptr M02_L05
M02_L25
 
dec       r9d
movsx     r10,word ptr [rcx+rax*2]
movsx     r11,dx
cmp       r10d,r11d
je        short M02_L26
movsx     r11,r8w
cmp       r10d,r11d
sete      r10b
movzx     r10d,r10b
jmp       short M02_L27
M02_L26
 
mov       r10d,1
M02_L27
 
test      r10b,r10b
je        short M02_L28
jmp       near ptr M02_L03
M02_L28
 
inc       rax
jmp       near ptr M02_L07
 
System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
sub       rsp,28
movzx     ecx,cx
call      qword ptr [7FFA534A7370]; Precode of System.Globalization.CharUnicodeInfo.GetCategoryCasingTableOffsetNoBoundsChecks(UInt32)
mov       rcx,[7FFA534C0750]
cmp       byte ptr [rcx+rax],0
setl      al
movzx     eax,al
add       rsp,28
ret
 
System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,edx
mov       edi,[rbx+8]
lea       ebp,[rdi-1]
mov       r14d,ebp
xor       r15d,r15d
test      sil,1
je        short M04_L03
xor       r15d,r15d
test      edi,edi
jle       short M04_L03
M04_L00
 
mov       ecx,r15d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L01
mov       rax,[7FFA534C0728]
test      byte ptr [rax+rcx],80
je        short M04_L03
jmp       short M04_L02
M04_L01
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L03
M04_L02
 
inc       r15d
cmp       edi,r15d
jg        short M04_L00
M04_L03
 
test      sil,2
je        near ptr M04_L10
mov       r14d,ebp
cmp       r14d,r15d
jl        short M04_L10
mov       ecx,r14d
or        ecx,r15d
jl        short M04_L07
cmp       edi,r14d
jle       short M04_L07
M04_L04
 
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L05
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L06
M04_L05
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L06
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L04
jmp       short M04_L10
M04_L07
 
cmp       r14d,edi
jae       short M04_L14
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L08
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L09
M04_L08
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L09
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L07
M04_L10
 
mov       r8d,r14d
sub       r8d,r15d
inc       r8d
cmp       edi,r8d
jne       short M04_L12
mov       rax,rbx
M04_L11
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L12
 
test      r8d,r8d
je        short M04_L13
mov       rcx,rbx
mov       edx,r15d
call      qword ptr [7FFA534A34A0]; Precode of System.String.InternalSubString(Int32, Int32)
jmp       short M04_L11
M04_L13
 
mov       rax,[7FFA534C08A0]
mov       rax,[rax]
jmp       short M04_L11
M04_L14
 
call      qword ptr [7FFA53493D20]; CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.SplitLines()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,48
vzeroupper
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+20],xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
xor       eax,eax
mov       [rsp+40],rax
mov       rbx,rcx
mov       rsi,[rbx+298]
test      rsi,rsi
je        near ptr M00_L03
xor       ecx,ecx
cmp       dword ptr [rsi+8],0
sete      cl
test      ecx,ecx
sete      cl
movzx     ecx,cl
cmp       dword ptr [rsi+8],0
jne       near ptr M00_L04
jmp       near ptr M00_L04
M00_L00
 
mov       [rsp+38],rdx
mov       [rsp+40],r8d
lea       rcx,[rsp+38]
call      qword ptr [7FF9F5E9C210]; System.ReadOnlySpan`1[[System.Char, System.Private.CoreLib]].ToString()
mov       [rsp+30],rax
mov       rsi,[rbx+18]
mov       rdx,[rsp+30]
lea       rcx,[rsi+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [rsi+8],rcx
M00_L01
 
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rsp+20],xmm0
mov       [rsp+20],rdi
mov       [rsp+28],ebp
cmp       dword ptr [rsp+28],0
je        near ptr M00_L10
mov       rcx,[rsp+20]
mov       r9d,[rsp+28]
mov       r8d,0A
mov       edx,0D
call      qword ptr [7FF9F616DAE8]; System.PackedSpanHelpers.IndexOfAny[[System.SpanHelpers+DontNegate`1[[System.Int16, System.Private.CoreLib]], System.Private.CoreLib]](Int16 ByRef, Int16, Int16, Int32)
cmp       eax,0FFFFFFFF
je        near ptr M00_L08
mov       ecx,1
mov       edx,[rsp+28]
sub       edx,1
jo        near ptr M00_L15
cmp       eax,edx
jge       near ptr M00_L13
cmp       eax,[rsp+28]
jae       near ptr M00_L19
mov       rdx,[rsp+20]
mov       r8d,eax
cmp       word ptr [rdx+r8*2],0D
jne       near ptr M00_L13
mov       edx,eax
add       edx,1
jo        near ptr M00_L15
cmp       edx,[rsp+28]
jae       near ptr M00_L19
mov       r8,[rsp+20]
cmp       word ptr [r8+rdx*2],0A
jne       near ptr M00_L13
mov       ecx,eax
add       rcx,2
mov       edx,[rsp+28]
cmp       rcx,rdx
ja        near ptr M00_L14
mov       ecx,2
cmp       eax,[rsp+28]
ja        near ptr M00_L14
M00_L02
 
mov       rdx,[rsp+20]
mov       r8d,eax
lea       rax,[rsp+20]
add       ecx,r8d
jo        near ptr M00_L15
mov       r10d,[rax+8]
mov       ebp,r10d
sub       ebp,ecx
mov       r9d,ecx
mov       r11d,ebp
add       r9,r11
cmp       r9,r10
ja        near ptr M00_L14
mov       rax,[rax]
lea       rdi,[rax+rcx*2]
jmp       near ptr M00_L00
M00_L03
 
xor       ecx,ecx
M00_L04
 
test      ecx,ecx
je        near ptr M00_L16
cmp       dword ptr [rsi+8],0
je        short M00_L06
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       short M00_L09
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L18
M00_L05
 
mov       ecx,[rsi+8]
dec       ecx
cmp       ecx,[rsi+8]
jae       near ptr M00_L19
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L11
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L18
M00_L06
 
test      rsi,rsi
jne       short M00_L12
xor       edi,edi
xor       ebp,ebp
M00_L07
 
jmp       near ptr M00_L01
M00_L08
 
xor       edi,edi
xor       ebp,ebp
mov       rdx,[rsp+20]
mov       r8d,[rsp+28]
jmp       near ptr M00_L00
M00_L09
 
call      qword ptr [7FF9F673E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L18
jmp       short M00_L05
M00_L10
 
add       rsp,48
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L11
 
call      qword ptr [7FF9F673E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       short M00_L18
jmp       short M00_L06
M00_L12
 
lea       rdi,[rsi+0C]
mov       ebp,[rsi+8]
jmp       short M00_L07
M00_L13
 
mov       edx,eax
inc       rdx
mov       r8d,[rsp+28]
cmp       rdx,r8
ja        short M00_L14
cmp       eax,[rsp+28]
jbe       near ptr M00_L02
M00_L14
 
call      qword ptr [7FF9F604E9D0]
int       3
M00_L15
 
call      CORINFO_HELP_OVERFLOW
M00_L16
 
call      qword ptr [7FF9F6365368]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L17
call      qword ptr [7FF9F63650B0]
mov       rbx,rax
M00_L17
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,2A313188468
mov       r8,rbx
call      qword ptr [7FF9F6076670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L18
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DE73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L06
M00_L19
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.ReadOnlySpan`1[[System.Char, System.Private.CoreLib]].ToString()
sub       rsp,38
xor       eax,eax
mov       [rsp+28],rax
mov       rax,[rcx]
mov       ecx,[rcx+8]
mov       [rsp+28],rax
mov       [rsp+30],ecx
lea       rcx,[rsp+28]
call      System.String..ctor(System.ReadOnlySpan`1)
nop
add       rsp,38
ret
 
System.PackedSpanHelpers.IndexOfAny[[System.SpanHelpers+DontNegate`1[[System.Int16, System.Private.CoreLib]], System.Private.CoreLib]](Int16 ByRef, Int16, Int16, Int32)
vzeroupper
cmp       r9d,8
jl        near ptr M02_L06
mov       rax,rcx
cmp       r9d,10
jle       near ptr M02_L26
movzx     edx,dl
vmovd     xmm0,edx
vpbroadcastb ymm0,xmm0
movzx     r8d,r8b
vmovd     xmm1,r8d
vpbroadcastb ymm1,xmm1
cmp       r9d,20
jle       short M02_L01
lea       edx,[r9-20]
movsxd    rdx,edx
lea       rdx,[rax+rdx*2]
M02_L00
 
vmovups   ymm2,[rax]
vpackuswb ymm2,ymm2,[rax+20]
vpcmpeqb  ymm3,ymm0,ymm2
vpcmpeqb  ymm2,ymm1,ymm2
vpor      ymm2,ymm3,ymm2
vptest    ymm2,ymm2
jne       short M02_L02
add       rax,40
cmp       rax,rdx
jb        short M02_L00
M02_L01
 
add       r9d,0FFFFFFF0
movsxd    rdx,r9d
lea       rdx,[rcx+rdx*2]
cmp       rax,rdx
cmova     rax,rdx
jmp       short M02_L04
M02_L02
 
sub       rax,rcx
shr       rax,1
vpermq    ymm0,ymm2,0D8
vpmovmskb edx,ymm0
xor       ecx,ecx
tzcnt     ecx,edx
add       eax,ecx
M02_L03
 
vzeroupper
ret
M02_L04
 
vmovups   ymm2,[rax]
vpackuswb ymm2,ymm2,[rdx]
vpcmpeqb  ymm0,ymm0,ymm2
vpcmpeqb  ymm1,ymm1,ymm2
vpor      ymm0,ymm0,ymm1
vptest    ymm0,ymm0
jne       near ptr M02_L24
M02_L05
 
mov       eax,0FFFFFFFF
jmp       short M02_L03
M02_L06
 
xor       eax,eax
cmp       r9d,4
jl        near ptr M02_L23
add       r9d,0FFFFFFFC
movsx     r10,word ptr [rcx]
movsx     rax,dx
cmp       r10d,eax
je        short M02_L07
movsx     rax,r8w
cmp       r10d,eax
sete      al
movzx     eax,al
jmp       short M02_L08
M02_L07
 
mov       eax,1
M02_L08
 
test      al,al
je        short M02_L09
xor       eax,eax
vzeroupper
ret
M02_L09
 
movsx     r10,word ptr [rcx+2]
movsx     rax,dx
cmp       r10d,eax
je        short M02_L10
movsx     rax,r8w
cmp       r10d,eax
sete      al
movzx     eax,al
jmp       short M02_L11
M02_L10
 
mov       eax,1
M02_L11
 
test      al,al
je        short M02_L12
mov       eax,1
vzeroupper
ret
M02_L12
 
movsx     r10,word ptr [rcx+4]
movsx     rax,dx
cmp       r10d,eax
je        short M02_L13
movsx     rax,r8w
cmp       r10d,eax
sete      al
movzx     eax,al
jmp       short M02_L14
M02_L13
 
mov       eax,1
M02_L14
 
test      al,al
je        short M02_L15
mov       eax,2
vzeroupper
ret
M02_L15
 
movsx     r10,word ptr [rcx+6]
movsx     rax,dx
cmp       r10d,eax
je        short M02_L16
movsx     rax,r8w
cmp       r10d,eax
sete      r10b
movzx     r10d,r10b
jmp       short M02_L17
M02_L16
 
mov       r10d,1
M02_L17
 
test      r10b,r10b
je        short M02_L18
mov       eax,3
jmp       near ptr M02_L03
M02_L18
 
mov       eax,4
test      r9d,r9d
jle       near ptr M02_L05
M02_L19
 
dec       r9d
movsx     r10,word ptr [rcx+rax*2]
movsx     r11,dx
cmp       r10d,r11d
je        short M02_L20
movsx     r11,r8w
cmp       r10d,r11d
sete      r10b
movzx     r10d,r10b
jmp       short M02_L21
M02_L20
 
mov       r10d,1
M02_L21
 
test      r10b,r10b
je        short M02_L22
jmp       near ptr M02_L03
M02_L22
 
inc       rax
M02_L23
 
test      r9d,r9d
jg        short M02_L19
jmp       near ptr M02_L05
M02_L24
 
vpermq    ymm0,ymm0,0D8
vpmovmskb r8d,ymm0
xor       r9d,r9d
tzcnt     r9d,r8d
cmp       r9d,10
jl        short M02_L25
mov       rax,rdx
add       r9d,0FFFFFFF0
M02_L25
 
sub       rax,rcx
shr       rax,1
add       eax,r9d
jmp       near ptr M02_L03
M02_L26
 
movzx     edx,dl
vmovd     xmm0,edx
vpbroadcastb xmm0,xmm0
movzx     edx,r8b
vmovd     xmm1,edx
vpbroadcastb xmm1,xmm1
lea       edx,[r9-8]
movsxd    rdx,edx
lea       rax,[rax+rdx*2]
cmp       rcx,rax
mov       rdx,rcx
cmova     rdx,rax
vmovups   xmm2,[rdx]
vpackuswb xmm2,xmm2,[rax]
vpcmpeqb  xmm0,xmm0,xmm2
vpcmpeqb  xmm1,xmm1,xmm2
vpor      xmm0,xmm0,xmm1
vptest    xmm0,xmm0
je        near ptr M02_L05
vpmovmskb r8d,xmm0
tzcnt     r8d,r8d
cmp       r8d,8
jl        short M02_L27
mov       rdx,rax
add       r8d,0FFFFFFF8
M02_L27
 
sub       rdx,rcx
shr       rdx,1
lea       eax,[rdx+r8]
jmp       near ptr M02_L03
 
System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
sub       rsp,28
movzx     ecx,cx
call      qword ptr [7FFA534A7370]; Precode of System.Globalization.CharUnicodeInfo.GetCategoryCasingTableOffsetNoBoundsChecks(UInt32)
mov       rcx,[7FFA534C0750]
cmp       byte ptr [rcx+rax],0
setl      al
movzx     eax,al
add       rsp,28
ret
 
System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,edx
mov       edi,[rbx+8]
lea       ebp,[rdi-1]
mov       r14d,ebp
xor       r15d,r15d
test      sil,1
je        short M04_L03
xor       r15d,r15d
test      edi,edi
jle       short M04_L03
M04_L00
 
mov       ecx,r15d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L01
mov       rax,[7FFA534C0728]
test      byte ptr [rax+rcx],80
je        short M04_L03
jmp       short M04_L02
M04_L01
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L03
M04_L02
 
inc       r15d
cmp       edi,r15d
jg        short M04_L00
M04_L03
 
test      sil,2
je        near ptr M04_L10
mov       r14d,ebp
cmp       r14d,r15d
jl        short M04_L10
mov       ecx,r14d
or        ecx,r15d
jl        short M04_L07
cmp       edi,r14d
jle       short M04_L07
M04_L04
 
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L05
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L06
M04_L05
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L06
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L04
jmp       short M04_L10
M04_L07
 
cmp       r14d,edi
jae       short M04_L14
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L08
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L09
M04_L08
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L09
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L07
M04_L10
 
mov       r8d,r14d
sub       r8d,r15d
inc       r8d
cmp       edi,r8d
jne       short M04_L12
mov       rax,rbx
M04_L11
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L12
 
test      r8d,r8d
je        short M04_L13
mov       rcx,rbx
mov       edx,r15d
call      qword ptr [7FFA534A34A0]; Precode of System.String.InternalSubString(Int32, Int32)
jmp       short M04_L11
M04_L13
 
mov       rax,[7FFA534C08A0]
mov       rax,[rax]
jmp       short M04_L11
M04_L14
 
call      qword ptr [7FFA53493D20]; CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.SplitLines()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,48
vzeroupper
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+20],xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
xor       eax,eax
mov       [rsp+40],rax
mov       rbx,rcx
mov       rsi,[rbx+298]
test      rsi,rsi
je        near ptr M00_L04
xor       ecx,ecx
cmp       dword ptr [rsi+8],0
sete      cl
test      ecx,ecx
sete      cl
movzx     ecx,cl
cmp       dword ptr [rsi+8],0
jne       near ptr M00_L05
jmp       near ptr M00_L05
M00_L00
 
mov       [rsp+38],rdx
mov       [rsp+40],r8d
lea       rcx,[rsp+38]
call      qword ptr [7FF9F5E6C210]; System.ReadOnlySpan`1[[System.Char, System.Private.CoreLib]].ToString()
mov       [rsp+30],rax
mov       rsi,[rbx+18]
mov       rdx,[rsp+30]
lea       rcx,[rsi+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rsi+8],rax
M00_L01
 
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rsp+20],xmm0
mov       [rsp+20],rdi
mov       [rsp+28],ebp
cmp       dword ptr [rsp+28],0
je        near ptr M00_L12
mov       rcx,[rsp+20]
mov       r9d,[rsp+28]
mov       r8d,0A
mov       edx,0D
call      qword ptr [7FF9F613DAE8]; System.PackedSpanHelpers.IndexOfAny[[System.SpanHelpers+DontNegate`1[[System.Int16, System.Private.CoreLib]], System.Private.CoreLib]](Int16 ByRef, Int16, Int16, Int32)
cmp       eax,0FFFFFFFF
je        near ptr M00_L03
mov       ecx,1
mov       edx,[rsp+28]
sub       edx,1
jo        near ptr M00_L15
cmp       eax,edx
jge       near ptr M00_L13
cmp       eax,[rsp+28]
jae       near ptr M00_L19
mov       rdx,[rsp+20]
mov       r8d,eax
cmp       word ptr [rdx+r8*2],0D
jne       near ptr M00_L13
mov       edx,eax
add       edx,1
jo        near ptr M00_L15
cmp       edx,[rsp+28]
jae       near ptr M00_L19
mov       r8,[rsp+20]
cmp       word ptr [r8+rdx*2],0A
jne       near ptr M00_L13
mov       ecx,eax
add       rcx,2
mov       edx,[rsp+28]
cmp       rcx,rdx
ja        near ptr M00_L14
mov       ecx,2
cmp       eax,[rsp+28]
ja        near ptr M00_L14
M00_L02
 
mov       rdx,[rsp+20]
mov       r8d,eax
lea       rax,[rsp+20]
add       ecx,r8d
jo        near ptr M00_L15
mov       r10d,[rax+8]
mov       ebp,r10d
sub       ebp,ecx
mov       r9d,ecx
mov       r11d,ebp
add       r9,r11
cmp       r9,r10
ja        near ptr M00_L14
mov       rax,[rax]
lea       rdi,[rax+rcx*2]
jmp       near ptr M00_L00
M00_L03
 
xor       edi,edi
xor       ebp,ebp
mov       rdx,[rsp+20]
mov       r8d,[rsp+28]
jmp       near ptr M00_L00
M00_L04
 
xor       ecx,ecx
M00_L05
 
test      ecx,ecx
je        near ptr M00_L16
cmp       dword ptr [rsi+8],0
je        short M00_L09
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       short M00_L06
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L18
jmp       short M00_L07
M00_L06
 
call      qword ptr [7FF9F670E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L18
M00_L07
 
mov       ecx,[rsi+8]
dec       ecx
cmp       ecx,[rsi+8]
jae       near ptr M00_L19
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L08
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L18
jmp       short M00_L09
M00_L08
 
call      qword ptr [7FF9F670E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L18
M00_L09
 
test      rsi,rsi
jne       short M00_L10
xor       edi,edi
xor       ebp,ebp
jmp       short M00_L11
M00_L10
 
lea       rdi,[rsi+0C]
mov       ebp,[rsi+8]
M00_L11
 
jmp       near ptr M00_L01
M00_L12
 
add       rsp,48
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L13
 
mov       edx,eax
inc       rdx
mov       r8d,[rsp+28]
cmp       rdx,r8
ja        short M00_L14
cmp       eax,[rsp+28]
jbe       near ptr M00_L02
M00_L14
 
call      qword ptr [7FF9F601E9D0]
int       3
M00_L15
 
call      CORINFO_HELP_OVERFLOW
M00_L16
 
call      qword ptr [7FF9F6335368]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L17
call      qword ptr [7FF9F63350B0]
mov       rbx,rax
M00_L17
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,209722F8468
mov       r8,rbx
call      qword ptr [7FF9F6046670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L18
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DB73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L09
M00_L19
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.ReadOnlySpan`1[[System.Char, System.Private.CoreLib]].ToString()
sub       rsp,38
xor       eax,eax
mov       [rsp+28],rax
mov       rax,[rcx]
mov       ecx,[rcx+8]
mov       [rsp+28],rax
mov       [rsp+30],ecx
lea       rcx,[rsp+28]
call      System.String..ctor(System.ReadOnlySpan`1)
nop
add       rsp,38
ret
 
System.PackedSpanHelpers.IndexOfAny[[System.SpanHelpers+DontNegate`1[[System.Int16, System.Private.CoreLib]], System.Private.CoreLib]](Int16 ByRef, Int16, Int16, Int32)
vzeroupper
cmp       r9d,8
jl        near ptr M02_L06
mov       rax,rcx
cmp       r9d,10
jle       near ptr M02_L26
movzx     edx,dl
vmovd     xmm0,edx
vpbroadcastb ymm0,xmm0
movzx     r8d,r8b
vmovd     xmm1,r8d
vpbroadcastb ymm1,xmm1
cmp       r9d,20
jle       short M02_L01
lea       edx,[r9-20]
movsxd    rdx,edx
lea       rdx,[rax+rdx*2]
M02_L00
 
vmovups   ymm2,[rax]
vpackuswb ymm2,ymm2,[rax+20]
vpcmpeqb  ymm3,ymm0,ymm2
vpcmpeqb  ymm2,ymm1,ymm2
vpor      ymm2,ymm3,ymm2
vptest    ymm2,ymm2
jne       short M02_L02
add       rax,40
cmp       rax,rdx
jb        short M02_L00
M02_L01
 
add       r9d,0FFFFFFF0
movsxd    rdx,r9d
lea       rdx,[rcx+rdx*2]
cmp       rax,rdx
cmova     rax,rdx
jmp       short M02_L04
M02_L02
 
sub       rax,rcx
shr       rax,1
vpermq    ymm0,ymm2,0D8
vpmovmskb edx,ymm0
xor       ecx,ecx
tzcnt     ecx,edx
add       eax,ecx
M02_L03
 
vzeroupper
ret
M02_L04
 
vmovups   ymm2,[rax]
vpackuswb ymm2,ymm2,[rdx]
vpcmpeqb  ymm0,ymm0,ymm2
vpcmpeqb  ymm1,ymm1,ymm2
vpor      ymm0,ymm0,ymm1
vptest    ymm0,ymm0
jne       near ptr M02_L24
M02_L05
 
mov       eax,0FFFFFFFF
jmp       short M02_L03
M02_L06
 
xor       eax,eax
cmp       r9d,4
jl        near ptr M02_L23
add       r9d,0FFFFFFFC
movsx     r10,word ptr [rcx]
movsx     rax,dx
cmp       r10d,eax
je        short M02_L07
movsx     rax,r8w
cmp       r10d,eax
sete      al
movzx     eax,al
jmp       short M02_L08
M02_L07
 
mov       eax,1
M02_L08
 
test      al,al
je        short M02_L09
xor       eax,eax
vzeroupper
ret
M02_L09
 
movsx     r10,word ptr [rcx+2]
movsx     rax,dx
cmp       r10d,eax
je        short M02_L10
movsx     rax,r8w
cmp       r10d,eax
sete      al
movzx     eax,al
jmp       short M02_L11
M02_L10
 
mov       eax,1
M02_L11
 
test      al,al
je        short M02_L12
mov       eax,1
vzeroupper
ret
M02_L12
 
movsx     r10,word ptr [rcx+4]
movsx     rax,dx
cmp       r10d,eax
je        short M02_L13
movsx     rax,r8w
cmp       r10d,eax
sete      al
movzx     eax,al
jmp       short M02_L14
M02_L13
 
mov       eax,1
M02_L14
 
test      al,al
je        short M02_L15
mov       eax,2
vzeroupper
ret
M02_L15
 
movsx     r10,word ptr [rcx+6]
movsx     rax,dx
cmp       r10d,eax
je        short M02_L16
movsx     rax,r8w
cmp       r10d,eax
sete      r10b
movzx     r10d,r10b
jmp       short M02_L17
M02_L16
 
mov       r10d,1
M02_L17
 
test      r10b,r10b
je        short M02_L18
mov       eax,3
jmp       near ptr M02_L03
M02_L18
 
mov       eax,4
test      r9d,r9d
jle       near ptr M02_L05
M02_L19
 
dec       r9d
movsx     r10,word ptr [rcx+rax*2]
movsx     r11,dx
cmp       r10d,r11d
je        short M02_L20
movsx     r11,r8w
cmp       r10d,r11d
sete      r10b
movzx     r10d,r10b
jmp       short M02_L21
M02_L20
 
mov       r10d,1
M02_L21
 
test      r10b,r10b
je        short M02_L22
jmp       near ptr M02_L03
M02_L22
 
inc       rax
M02_L23
 
test      r9d,r9d
jg        short M02_L19
jmp       near ptr M02_L05
M02_L24
 
vpermq    ymm0,ymm0,0D8
vpmovmskb r8d,ymm0
xor       r9d,r9d
tzcnt     r9d,r8d
cmp       r9d,10
jl        short M02_L25
mov       rax,rdx
add       r9d,0FFFFFFF0
M02_L25
 
sub       rax,rcx
shr       rax,1
add       eax,r9d
jmp       near ptr M02_L03
M02_L26
 
movzx     edx,dl
vmovd     xmm0,edx
vpbroadcastb xmm0,xmm0
movzx     edx,r8b
vmovd     xmm1,edx
vpbroadcastb xmm1,xmm1
lea       edx,[r9-8]
movsxd    rdx,edx
lea       rax,[rax+rdx*2]
cmp       rcx,rax
mov       rdx,rcx
cmova     rdx,rax
vmovups   xmm2,[rdx]
vpackuswb xmm2,xmm2,[rax]
vpcmpeqb  xmm0,xmm0,xmm2
vpcmpeqb  xmm1,xmm1,xmm2
vpor      xmm0,xmm0,xmm1
vptest    xmm0,xmm0
je        near ptr M02_L05
vpmovmskb r8d,xmm0
tzcnt     r8d,r8d
cmp       r8d,8
jl        short M02_L27
mov       rdx,rax
add       r8d,0FFFFFFF8
M02_L27
 
sub       rdx,rcx
shr       rdx,1
lea       eax,[rdx+r8]
jmp       near ptr M02_L03
 
System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
sub       rsp,28
movzx     ecx,cx
call      qword ptr [7FFA534A7370]; Precode of System.Globalization.CharUnicodeInfo.GetCategoryCasingTableOffsetNoBoundsChecks(UInt32)
mov       rcx,[7FFA534C0750]
cmp       byte ptr [rcx+rax],0
setl      al
movzx     eax,al
add       rsp,28
ret
 
System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,edx
mov       edi,[rbx+8]
lea       ebp,[rdi-1]
mov       r14d,ebp
xor       r15d,r15d
test      sil,1
je        short M04_L03
xor       r15d,r15d
test      edi,edi
jle       short M04_L03
M04_L00
 
mov       ecx,r15d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L01
mov       rax,[7FFA534C0728]
test      byte ptr [rax+rcx],80
je        short M04_L03
jmp       short M04_L02
M04_L01
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L03
M04_L02
 
inc       r15d
cmp       edi,r15d
jg        short M04_L00
M04_L03
 
test      sil,2
je        near ptr M04_L10
mov       r14d,ebp
cmp       r14d,r15d
jl        short M04_L10
mov       ecx,r14d
or        ecx,r15d
jl        short M04_L07
cmp       edi,r14d
jle       short M04_L07
M04_L04
 
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L05
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L06
M04_L05
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L06
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L04
jmp       short M04_L10
M04_L07
 
cmp       r14d,edi
jae       short M04_L14
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L08
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L09
M04_L08
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L09
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L07
M04_L10
 
mov       r8d,r14d
sub       r8d,r15d
inc       r8d
cmp       edi,r8d
jne       short M04_L12
mov       rax,rbx
M04_L11
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L12
 
test      r8d,r8d
je        short M04_L13
mov       rcx,rbx
mov       edx,r15d
call      qword ptr [7FFA534A34A0]; Precode of System.String.InternalSubString(Int32, Int32)
jmp       short M04_L11
M04_L13
 
mov       rax,[7FFA534C08A0]
mov       rax,[rax]
jmp       short M04_L11
M04_L14
 
call      qword ptr [7FFA53493D20]; CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.SplitLines()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,48
vzeroupper
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+20],xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
xor       eax,eax
mov       [rsp+40],rax
mov       rbx,rcx
mov       rsi,[rbx+298]
test      rsi,rsi
je        near ptr M00_L05
xor       ecx,ecx
cmp       dword ptr [rsi+8],0
sete      cl
test      ecx,ecx
sete      cl
movzx     ecx,cl
cmp       dword ptr [rsi+8],0
jne       near ptr M00_L06
jmp       near ptr M00_L06
M00_L00
 
mov       [rsp+38],rdx
mov       [rsp+40],r8d
lea       rcx,[rsp+38]
call      qword ptr [7FF9F5E7C210]; System.ReadOnlySpan`1[[System.Char, System.Private.CoreLib]].ToString()
mov       [rsp+30],rax
mov       rsi,[rbx+18]
mov       rdx,[rsp+30]
lea       rcx,[rsi+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rsi+8],rax
M00_L01
 
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rsp+20],xmm0
mov       [rsp+20],rdi
mov       [rsp+28],ebp
cmp       dword ptr [rsp+28],0
je        near ptr M00_L04
mov       rcx,[rsp+20]
mov       r9d,[rsp+28]
mov       r8d,0A
mov       edx,0D
call      qword ptr [7FF9F60E7C78]; System.PackedSpanHelpers.IndexOfAny[[System.SpanHelpers+DontNegate`1[[System.Int16, System.Private.CoreLib]], System.Private.CoreLib]](Int16 ByRef, Int16, Int16, Int32)
cmp       eax,0FFFFFFFF
je        near ptr M00_L03
mov       ecx,1
mov       edx,[rsp+28]
sub       edx,1
jo        near ptr M00_L15
cmp       eax,edx
jge       near ptr M00_L13
cmp       eax,[rsp+28]
jae       near ptr M00_L19
mov       rdx,[rsp+20]
mov       r8d,eax
cmp       word ptr [rdx+r8*2],0D
jne       near ptr M00_L13
mov       edx,eax
add       edx,1
jo        near ptr M00_L15
cmp       edx,[rsp+28]
jae       near ptr M00_L19
mov       r8,[rsp+20]
cmp       word ptr [r8+rdx*2],0A
jne       near ptr M00_L13
mov       ecx,eax
add       rcx,2
mov       edx,[rsp+28]
cmp       rcx,rdx
ja        near ptr M00_L14
mov       ecx,2
cmp       eax,[rsp+28]
ja        near ptr M00_L14
M00_L02
 
mov       rdx,[rsp+20]
mov       r8d,eax
lea       rax,[rsp+20]
add       ecx,r8d
jo        near ptr M00_L15
mov       r10d,[rax+8]
mov       ebp,r10d
sub       ebp,ecx
mov       r9d,ecx
mov       r11d,ebp
add       r9,r11
cmp       r9,r10
ja        near ptr M00_L14
mov       rax,[rax]
lea       rdi,[rax+rcx*2]
jmp       near ptr M00_L00
M00_L03
 
xor       edi,edi
xor       ebp,ebp
mov       rdx,[rsp+20]
mov       r8d,[rsp+28]
jmp       near ptr M00_L00
M00_L04
 
add       rsp,48
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L05
 
xor       ecx,ecx
M00_L06
 
test      ecx,ecx
je        near ptr M00_L16
cmp       dword ptr [rsi+8],0
je        short M00_L10
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       short M00_L07
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L18
jmp       short M00_L08
M00_L07
 
call      qword ptr [7FF9F671E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L18
M00_L08
 
mov       ecx,[rsi+8]
dec       ecx
cmp       ecx,[rsi+8]
jae       near ptr M00_L19
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L09
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L18
jmp       short M00_L10
M00_L09
 
call      qword ptr [7FF9F671E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L18
M00_L10
 
test      rsi,rsi
jne       short M00_L11
xor       edi,edi
xor       ebp,ebp
jmp       short M00_L12
M00_L11
 
lea       rdi,[rsi+0C]
mov       ebp,[rsi+8]
M00_L12
 
jmp       near ptr M00_L01
M00_L13
 
mov       edx,eax
inc       rdx
mov       r8d,[rsp+28]
cmp       rdx,r8
ja        short M00_L14
cmp       eax,[rsp+28]
jbe       near ptr M00_L02
M00_L14
 
call      qword ptr [7FF9F602E9D0]
int       3
M00_L15
 
call      CORINFO_HELP_OVERFLOW
M00_L16
 
call      qword ptr [7FF9F6354570]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L17
call      qword ptr [7FF9F63542B8]
mov       rbx,rax
M00_L17
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,255A8738468
mov       r8,rbx
call      qword ptr [7FF9F6056670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L18
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DC73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L10
M00_L19
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.ReadOnlySpan`1[[System.Char, System.Private.CoreLib]].ToString()
sub       rsp,38
xor       eax,eax
mov       [rsp+28],rax
mov       rax,[rcx]
mov       ecx,[rcx+8]
mov       [rsp+28],rax
mov       [rsp+30],ecx
lea       rcx,[rsp+28]
call      System.String..ctor(System.ReadOnlySpan`1)
nop
add       rsp,38
ret
 
System.PackedSpanHelpers.IndexOfAny[[System.SpanHelpers+DontNegate`1[[System.Int16, System.Private.CoreLib]], System.Private.CoreLib]](Int16 ByRef, Int16, Int16, Int32)
vzeroupper
cmp       r9d,8
jl        near ptr M02_L06
mov       rax,rcx
cmp       r9d,10
jle       near ptr M02_L26
movzx     edx,dl
vmovd     xmm0,edx
vpbroadcastb ymm0,xmm0
movzx     r8d,r8b
vmovd     xmm1,r8d
vpbroadcastb ymm1,xmm1
cmp       r9d,20
jle       short M02_L01
lea       edx,[r9-20]
movsxd    rdx,edx
lea       rdx,[rax+rdx*2]
M02_L00
 
vmovups   ymm2,[rax]
vpackuswb ymm2,ymm2,[rax+20]
vpcmpeqb  ymm3,ymm0,ymm2
vpcmpeqb  ymm2,ymm1,ymm2
vpor      ymm2,ymm3,ymm2
vptest    ymm2,ymm2
jne       short M02_L02
add       rax,40
cmp       rax,rdx
jb        short M02_L00
M02_L01
 
add       r9d,0FFFFFFF0
movsxd    rdx,r9d
lea       rdx,[rcx+rdx*2]
cmp       rax,rdx
cmova     rax,rdx
jmp       short M02_L04
M02_L02
 
sub       rax,rcx
shr       rax,1
vpermq    ymm0,ymm2,0D8
vpmovmskb edx,ymm0
xor       ecx,ecx
tzcnt     ecx,edx
add       eax,ecx
M02_L03
 
vzeroupper
ret
M02_L04
 
vmovups   ymm2,[rax]
vpackuswb ymm2,ymm2,[rdx]
vpcmpeqb  ymm0,ymm0,ymm2
vpcmpeqb  ymm1,ymm1,ymm2
vpor      ymm0,ymm0,ymm1
vptest    ymm0,ymm0
jne       near ptr M02_L24
M02_L05
 
mov       eax,0FFFFFFFF
jmp       short M02_L03
M02_L06
 
xor       eax,eax
cmp       r9d,4
jl        near ptr M02_L23
add       r9d,0FFFFFFFC
movsx     r10,word ptr [rcx]
movsx     rax,dx
cmp       r10d,eax
je        short M02_L07
movsx     rax,r8w
cmp       r10d,eax
sete      al
movzx     eax,al
jmp       short M02_L08
M02_L07
 
mov       eax,1
M02_L08
 
test      al,al
je        short M02_L09
xor       eax,eax
vzeroupper
ret
M02_L09
 
movsx     r10,word ptr [rcx+2]
movsx     rax,dx
cmp       r10d,eax
je        short M02_L10
movsx     rax,r8w
cmp       r10d,eax
sete      al
movzx     eax,al
jmp       short M02_L11
M02_L10
 
mov       eax,1
M02_L11
 
test      al,al
je        short M02_L12
mov       eax,1
vzeroupper
ret
M02_L12
 
movsx     r10,word ptr [rcx+4]
movsx     rax,dx
cmp       r10d,eax
je        short M02_L13
movsx     rax,r8w
cmp       r10d,eax
sete      al
movzx     eax,al
jmp       short M02_L14
M02_L13
 
mov       eax,1
M02_L14
 
test      al,al
je        short M02_L15
mov       eax,2
vzeroupper
ret
M02_L15
 
movsx     r10,word ptr [rcx+6]
movsx     rax,dx
cmp       r10d,eax
je        short M02_L16
movsx     rax,r8w
cmp       r10d,eax
sete      r10b
movzx     r10d,r10b
jmp       short M02_L17
M02_L16
 
mov       r10d,1
M02_L17
 
test      r10b,r10b
je        short M02_L18
mov       eax,3
jmp       near ptr M02_L03
M02_L18
 
mov       eax,4
test      r9d,r9d
jle       near ptr M02_L05
M02_L19
 
dec       r9d
movsx     r10,word ptr [rcx+rax*2]
movsx     r11,dx
cmp       r10d,r11d
je        short M02_L20
movsx     r11,r8w
cmp       r10d,r11d
sete      r10b
movzx     r10d,r10b
jmp       short M02_L21
M02_L20
 
mov       r10d,1
M02_L21
 
test      r10b,r10b
je        short M02_L22
jmp       near ptr M02_L03
M02_L22
 
inc       rax
M02_L23
 
test      r9d,r9d
jg        short M02_L19
jmp       near ptr M02_L05
M02_L24
 
vpermq    ymm0,ymm0,0D8
vpmovmskb r8d,ymm0
xor       r9d,r9d
tzcnt     r9d,r8d
cmp       r9d,10
jl        short M02_L25
mov       rax,rdx
add       r9d,0FFFFFFF0
M02_L25
 
sub       rax,rcx
shr       rax,1
add       eax,r9d
jmp       near ptr M02_L03
M02_L26
 
movzx     edx,dl
vmovd     xmm0,edx
vpbroadcastb xmm0,xmm0
movzx     edx,r8b
vmovd     xmm1,edx
vpbroadcastb xmm1,xmm1
lea       edx,[r9-8]
movsxd    rdx,edx
lea       rax,[rax+rdx*2]
cmp       rcx,rax
mov       rdx,rcx
cmova     rdx,rax
vmovups   xmm2,[rdx]
vpackuswb xmm2,xmm2,[rax]
vpcmpeqb  xmm0,xmm0,xmm2
vpcmpeqb  xmm1,xmm1,xmm2
vpor      xmm0,xmm0,xmm1
vptest    xmm0,xmm0
je        near ptr M02_L05
vpmovmskb r8d,xmm0
tzcnt     r8d,r8d
cmp       r8d,8
jl        short M02_L27
mov       rdx,rax
add       r8d,0FFFFFFF8
M02_L27
 
sub       rdx,rcx
shr       rdx,1
lea       eax,[rdx+r8]
jmp       near ptr M02_L03
 
System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
sub       rsp,28
movzx     ecx,cx
call      qword ptr [7FFA534A7370]; Precode of System.Globalization.CharUnicodeInfo.GetCategoryCasingTableOffsetNoBoundsChecks(UInt32)
mov       rcx,[7FFA534C0750]
cmp       byte ptr [rcx+rax],0
setl      al
movzx     eax,al
add       rsp,28
ret
 
System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,edx
mov       edi,[rbx+8]
lea       ebp,[rdi-1]
mov       r14d,ebp
xor       r15d,r15d
test      sil,1
je        short M04_L03
xor       r15d,r15d
test      edi,edi
jle       short M04_L03
M04_L00
 
mov       ecx,r15d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L01
mov       rax,[7FFA534C0728]
test      byte ptr [rax+rcx],80
je        short M04_L03
jmp       short M04_L02
M04_L01
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L03
M04_L02
 
inc       r15d
cmp       edi,r15d
jg        short M04_L00
M04_L03
 
test      sil,2
je        near ptr M04_L10
mov       r14d,ebp
cmp       r14d,r15d
jl        short M04_L10
mov       ecx,r14d
or        ecx,r15d
jl        short M04_L07
cmp       edi,r14d
jle       short M04_L07
M04_L04
 
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L05
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L06
M04_L05
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L06
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L04
jmp       short M04_L10
M04_L07
 
cmp       r14d,edi
jae       short M04_L14
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L08
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L09
M04_L08
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L09
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L07
M04_L10
 
mov       r8d,r14d
sub       r8d,r15d
inc       r8d
cmp       edi,r8d
jne       short M04_L12
mov       rax,rbx
M04_L11
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L12
 
test      r8d,r8d
je        short M04_L13
mov       rcx,rbx
mov       edx,r15d
call      qword ptr [7FFA534A34A0]; Precode of System.String.InternalSubString(Int32, Int32)
jmp       short M04_L11
M04_L13
 
mov       rax,[7FFA534C08A0]
mov       rax,[rax]
jmp       short M04_L11
M04_L14
 
call      qword ptr [7FFA53493D20]; CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.SplitLines()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,48
vzeroupper
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+20],xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
xor       eax,eax
mov       [rsp+40],rax
mov       rbx,rcx
mov       rsi,[rbx+298]
test      rsi,rsi
je        near ptr M00_L04
xor       ecx,ecx
cmp       dword ptr [rsi+8],0
sete      cl
test      ecx,ecx
sete      cl
movzx     ecx,cl
cmp       dword ptr [rsi+8],0
jne       near ptr M00_L05
jmp       near ptr M00_L05
M00_L00
 
mov       [rsp+38],rdx
mov       [rsp+40],r8d
lea       rcx,[rsp+38]
call      qword ptr [7FF9F5E7C210]; System.ReadOnlySpan`1[[System.Char, System.Private.CoreLib]].ToString()
mov       [rsp+30],rax
mov       rsi,[rbx+18]
mov       rdx,[rsp+30]
lea       rcx,[rsi+8]
call      CORINFO_HELP_ASSIGN_REF
xor       ecx,ecx
mov       [rsi+8],rcx
M00_L01
 
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rsp+20],xmm0
mov       [rsp+20],rdi
mov       [rsp+28],ebp
cmp       dword ptr [rsp+28],0
je        near ptr M00_L11
mov       rcx,[rsp+20]
mov       r9d,[rsp+28]
mov       r8d,0A
mov       edx,0D
call      qword ptr [7FF9F614DAE8]; System.PackedSpanHelpers.IndexOfAny[[System.SpanHelpers+DontNegate`1[[System.Int16, System.Private.CoreLib]], System.Private.CoreLib]](Int16 ByRef, Int16, Int16, Int32)
cmp       eax,0FFFFFFFF
je        near ptr M00_L09
mov       ecx,1
mov       edx,[rsp+28]
sub       edx,1
jo        near ptr M00_L14
cmp       eax,edx
jge       near ptr M00_L03
cmp       eax,[rsp+28]
jae       near ptr M00_L19
mov       rdx,[rsp+20]
mov       r8d,eax
cmp       word ptr [rdx+r8*2],0D
jne       near ptr M00_L03
mov       edx,eax
add       edx,1
jo        near ptr M00_L14
cmp       edx,[rsp+28]
jae       near ptr M00_L19
mov       r8,[rsp+20]
cmp       word ptr [r8+rdx*2],0A
jne       short M00_L03
mov       ecx,eax
add       rcx,2
mov       edx,[rsp+28]
cmp       rcx,rdx
ja        near ptr M00_L18
mov       ecx,2
M00_L02
 
cmp       eax,[rsp+28]
ja        near ptr M00_L18
mov       rdx,[rsp+20]
mov       r8d,eax
lea       rax,[rsp+20]
add       ecx,r8d
jo        near ptr M00_L14
mov       r10d,[rax+8]
mov       ebp,r10d
sub       ebp,ecx
mov       r9d,ecx
mov       r11d,ebp
add       r9,r11
cmp       r9,r10
ja        near ptr M00_L18
mov       rax,[rax]
lea       rdi,[rax+rcx*2]
jmp       near ptr M00_L00
M00_L03
 
mov       edx,eax
inc       rdx
mov       r8d,[rsp+28]
cmp       rdx,r8
ja        near ptr M00_L18
jmp       short M00_L02
M00_L04
 
xor       ecx,ecx
M00_L05
 
test      ecx,ecx
je        near ptr M00_L15
cmp       dword ptr [rsi+8],0
je        short M00_L07
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       short M00_L10
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L17
M00_L06
 
mov       ecx,[rsi+8]
dec       ecx
cmp       ecx,[rsi+8]
jae       near ptr M00_L19
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L12
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L17
M00_L07
 
test      rsi,rsi
jne       short M00_L13
xor       edi,edi
xor       ebp,ebp
M00_L08
 
jmp       near ptr M00_L01
M00_L09
 
xor       edi,edi
xor       ebp,ebp
mov       rdx,[rsp+20]
mov       r8d,[rsp+28]
jmp       near ptr M00_L00
M00_L10
 
call      qword ptr [7FF9F671E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       short M00_L17
jmp       short M00_L06
M00_L11
 
add       rsp,48
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L12
 
call      qword ptr [7FF9F671E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       short M00_L17
jmp       short M00_L07
M00_L13
 
lea       rdi,[rsi+0C]
mov       ebp,[rsi+8]
jmp       short M00_L08
M00_L14
 
call      CORINFO_HELP_OVERFLOW
M00_L15
 
call      qword ptr [7FF9F6345368]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L16
call      qword ptr [7FF9F63450B0]
mov       rbx,rax
M00_L16
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,23902D78468
mov       r8,rbx
call      qword ptr [7FF9F6056670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L17
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DC73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L07
M00_L18
 
call      qword ptr [7FF9F602E9D0]
int       3
M00_L19
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.ReadOnlySpan`1[[System.Char, System.Private.CoreLib]].ToString()
sub       rsp,38
xor       eax,eax
mov       [rsp+28],rax
mov       rax,[rcx]
mov       ecx,[rcx+8]
mov       [rsp+28],rax
mov       [rsp+30],ecx
lea       rcx,[rsp+28]
call      System.String..ctor(System.ReadOnlySpan`1)
nop
add       rsp,38
ret
 
System.PackedSpanHelpers.IndexOfAny[[System.SpanHelpers+DontNegate`1[[System.Int16, System.Private.CoreLib]], System.Private.CoreLib]](Int16 ByRef, Int16, Int16, Int32)
vzeroupper
cmp       r9d,8
jl        near ptr M02_L06
mov       rax,rcx
cmp       r9d,10
jle       near ptr M02_L26
movzx     edx,dl
vmovd     xmm0,edx
vpbroadcastb ymm0,xmm0
movzx     r8d,r8b
vmovd     xmm1,r8d
vpbroadcastb ymm1,xmm1
cmp       r9d,20
jle       short M02_L01
lea       edx,[r9-20]
movsxd    rdx,edx
lea       rdx,[rax+rdx*2]
M02_L00
 
vmovups   ymm2,[rax]
vpackuswb ymm2,ymm2,[rax+20]
vpcmpeqb  ymm3,ymm0,ymm2
vpcmpeqb  ymm2,ymm1,ymm2
vpor      ymm2,ymm3,ymm2
vptest    ymm2,ymm2
jne       short M02_L02
add       rax,40
cmp       rax,rdx
jb        short M02_L00
M02_L01
 
add       r9d,0FFFFFFF0
movsxd    rdx,r9d
lea       rdx,[rcx+rdx*2]
cmp       rax,rdx
cmova     rax,rdx
jmp       short M02_L04
M02_L02
 
sub       rax,rcx
shr       rax,1
vpermq    ymm0,ymm2,0D8
vpmovmskb edx,ymm0
xor       ecx,ecx
tzcnt     ecx,edx
add       eax,ecx
M02_L03
 
vzeroupper
ret
M02_L04
 
vmovups   ymm2,[rax]
vpackuswb ymm2,ymm2,[rdx]
vpcmpeqb  ymm0,ymm0,ymm2
vpcmpeqb  ymm1,ymm1,ymm2
vpor      ymm0,ymm0,ymm1
vptest    ymm0,ymm0
jne       near ptr M02_L24
M02_L05
 
mov       eax,0FFFFFFFF
jmp       short M02_L03
M02_L06
 
xor       eax,eax
cmp       r9d,4
jl        near ptr M02_L23
add       r9d,0FFFFFFFC
movsx     r10,word ptr [rcx]
movsx     rax,dx
cmp       r10d,eax
je        short M02_L07
movsx     rax,r8w
cmp       r10d,eax
sete      al
movzx     eax,al
jmp       short M02_L08
M02_L07
 
mov       eax,1
M02_L08
 
test      al,al
je        short M02_L09
xor       eax,eax
vzeroupper
ret
M02_L09
 
movsx     r10,word ptr [rcx+2]
movsx     rax,dx
cmp       r10d,eax
je        short M02_L10
movsx     rax,r8w
cmp       r10d,eax
sete      al
movzx     eax,al
jmp       short M02_L11
M02_L10
 
mov       eax,1
M02_L11
 
test      al,al
je        short M02_L12
mov       eax,1
vzeroupper
ret
M02_L12
 
movsx     r10,word ptr [rcx+4]
movsx     rax,dx
cmp       r10d,eax
je        short M02_L13
movsx     rax,r8w
cmp       r10d,eax
sete      al
movzx     eax,al
jmp       short M02_L14
M02_L13
 
mov       eax,1
M02_L14
 
test      al,al
je        short M02_L15
mov       eax,2
vzeroupper
ret
M02_L15
 
movsx     r10,word ptr [rcx+6]
movsx     rax,dx
cmp       r10d,eax
je        short M02_L16
movsx     rax,r8w
cmp       r10d,eax
sete      r10b
movzx     r10d,r10b
jmp       short M02_L17
M02_L16
 
mov       r10d,1
M02_L17
 
test      r10b,r10b
je        short M02_L18
mov       eax,3
jmp       near ptr M02_L03
M02_L18
 
mov       eax,4
test      r9d,r9d
jle       near ptr M02_L05
M02_L19
 
dec       r9d
movsx     r10,word ptr [rcx+rax*2]
movsx     r11,dx
cmp       r10d,r11d
je        short M02_L20
movsx     r11,r8w
cmp       r10d,r11d
sete      r10b
movzx     r10d,r10b
jmp       short M02_L21
M02_L20
 
mov       r10d,1
M02_L21
 
test      r10b,r10b
je        short M02_L22
jmp       near ptr M02_L03
M02_L22
 
inc       rax
M02_L23
 
test      r9d,r9d
jg        short M02_L19
jmp       near ptr M02_L05
M02_L24
 
vpermq    ymm0,ymm0,0D8
vpmovmskb r8d,ymm0
xor       r9d,r9d
tzcnt     r9d,r8d
cmp       r9d,10
jl        short M02_L25
mov       rax,rdx
add       r9d,0FFFFFFF0
M02_L25
 
sub       rax,rcx
shr       rax,1
add       eax,r9d
jmp       near ptr M02_L03
M02_L26
 
movzx     edx,dl
vmovd     xmm0,edx
vpbroadcastb xmm0,xmm0
movzx     edx,r8b
vmovd     xmm1,edx
vpbroadcastb xmm1,xmm1
lea       edx,[r9-8]
movsxd    rdx,edx
lea       rax,[rax+rdx*2]
cmp       rcx,rax
mov       rdx,rcx
cmova     rdx,rax
vmovups   xmm2,[rdx]
vpackuswb xmm2,xmm2,[rax]
vpcmpeqb  xmm0,xmm0,xmm2
vpcmpeqb  xmm1,xmm1,xmm2
vpor      xmm0,xmm0,xmm1
vptest    xmm0,xmm0
je        near ptr M02_L05
vpmovmskb r8d,xmm0
tzcnt     r8d,r8d
cmp       r8d,8
jl        short M02_L27
mov       rdx,rax
add       r8d,0FFFFFFF8
M02_L27
 
sub       rdx,rcx
shr       rdx,1
lea       eax,[rdx+r8]
jmp       near ptr M02_L03
 
System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
sub       rsp,28
movzx     ecx,cx
call      qword ptr [7FFA534A7370]; Precode of System.Globalization.CharUnicodeInfo.GetCategoryCasingTableOffsetNoBoundsChecks(UInt32)
mov       rcx,[7FFA534C0750]
cmp       byte ptr [rcx+rax],0
setl      al
movzx     eax,al
add       rsp,28
ret
 
System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,edx
mov       edi,[rbx+8]
lea       ebp,[rdi-1]
mov       r14d,ebp
xor       r15d,r15d
test      sil,1
je        short M04_L03
xor       r15d,r15d
test      edi,edi
jle       short M04_L03
M04_L00
 
mov       ecx,r15d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L01
mov       rax,[7FFA534C0728]
test      byte ptr [rax+rcx],80
je        short M04_L03
jmp       short M04_L02
M04_L01
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L03
M04_L02
 
inc       r15d
cmp       edi,r15d
jg        short M04_L00
M04_L03
 
test      sil,2
je        near ptr M04_L10
mov       r14d,ebp
cmp       r14d,r15d
jl        short M04_L10
mov       ecx,r14d
or        ecx,r15d
jl        short M04_L07
cmp       edi,r14d
jle       short M04_L07
M04_L04
 
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L05
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L06
M04_L05
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L06
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L04
jmp       short M04_L10
M04_L07
 
cmp       r14d,edi
jae       short M04_L14
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L08
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L09
M04_L08
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M04_L10
M04_L09
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L07
M04_L10
 
mov       r8d,r14d
sub       r8d,r15d
inc       r8d
cmp       edi,r8d
jne       short M04_L12
mov       rax,rbx
M04_L11
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L12
 
test      r8d,r8d
je        short M04_L13
mov       rcx,rbx
mov       edx,r15d
call      qword ptr [7FFA534A34A0]; Precode of System.String.InternalSubString(Int32, Int32)
jmp       short M04_L11
M04_L13
 
mov       rax,[7FFA534C08A0]
mov       rax,[rax]
jmp       short M04_L11
M04_L14
 
call      qword ptr [7FFA53493D20]; CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.SplitRemoveEmpty()
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,48
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
xor       eax,eax
mov       [rbp-40],rax
mov       [rbp-60],rsp
mov       rbx,rcx
mov       rsi,[rbx+298]
test      rsi,rsi
je        short M00_L00
xor       ecx,ecx
cmp       dword ptr [rsi+8],0
sete      cl
test      ecx,ecx
sete      cl
movzx     ecx,cl
cmp       dword ptr [rsi+8],0
jne       short M00_L01
jmp       short M00_L01
M00_L00
 
xor       ecx,ecx
M00_L01
 
test      ecx,ecx
je        near ptr M00_L28
cmp       dword ptr [rsi+8],0
je        short M00_L05
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       short M00_L02
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L30
jmp       short M00_L03
M00_L02
 
call      qword ptr [7FF9F68DEAF0]
test      eax,eax
jne       near ptr M00_L30
M00_L03
 
mov       ecx,[rsi+8]
dec       ecx
cmp       ecx,[rsi+8]
jae       near ptr M00_L35
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L04
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L30
jmp       short M00_L05
M00_L04
 
call      qword ptr [7FF9F68DEAF0]
test      eax,eax
jne       near ptr M00_L30
M00_L05
 
mov       edi,[rsi+8]
test      edi,edi
je        short M00_L09
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       short M00_L06
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L31
jmp       short M00_L07
M00_L06
 
call      qword ptr [7FF9F68DEAF0]
test      eax,eax
jne       near ptr M00_L31
M00_L07
 
dec       edi
mov       ecx,edi
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L08
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L31
jmp       short M00_L09
M00_L08
 
call      qword ptr [7FF9F68DEAF0]
test      eax,eax
jne       near ptr M00_L31
M00_L09
 
mov       rcx,offset MT_System.Char[]
mov       edx,1
call      CORINFO_HELP_NEWARR_1_VC
mov       word ptr [rax+10],2C
cmp       [rsi],sil
add       rax,10
mov       rcx,rsi
mov       [rbp-50],rax
mov       dword ptr [rbp-48],1
lea       rdx,[rbp-50]
mov       r8d,7FFFFFFF
mov       r9d,1
call      qword ptr [7FF9F5DE70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
mov       rsi,rax
mov       rcx,offset MT_System.Collections.Generic.List`1[[System.String, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       rcx,21E61401D90
mov       rdx,[rcx]
lea       rcx,[rdi+8]
call      CORINFO_HELP_ASSIGN_REF
mov       rdx,rsi
test      rdx,rdx
je        near ptr M00_L32
mov       rcx,rdi
call      qword ptr [7FF9F5E9E160]; System.Collections.Generic.List`1[[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1)
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyCollection`1[[System.String, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
lea       rcx,[rsi+8]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rsi+8]
mov       r11,7FF9F5CA1100
call      qword ptr [r11]
test      eax,eax
je        near ptr M00_L33
mov       rcx,[rsi+8]
mov       r11,7FF9F5CA1108
call      qword ptr [r11]
mov       rcx,rax
M00_L10
 
mov       [rbp-58],rcx
test      rcx,rcx
je        near ptr M00_L20
mov       rsi,[rcx]
mov       rdi,offset MT_System.Collections.Generic.List`1+Enumerator[[System.String, System.Private.CoreLib]]
cmp       rsi,rdi
jne       near ptr M00_L20
jmp       short M00_L13
M00_L11
 
mov       rcx,[rbp-58]
mov       rax,[rcx+10]
M00_L12
 
mov       [rbp-40],rax
mov       rcx,[rbx+18]
lea       r8,[rbp-40]
mov       rdx,offset MD_BenchmarkDotNet.Engines.Consumer.Consume[[System.String, System.Private.CoreLib]](System.String ByRef)
cmp       [rcx],ecx
call      qword ptr [7FF9F68A7A98]; BenchmarkDotNet.Engines.Consumer.Consume[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef)
mov       rcx,[rbp-58]
M00_L13
 
cmp       rsi,rdi
jne       short M00_L15
lea       r14,[rcx+8]
mov       r15,[r14]
mov       edx,[r14+14]
cmp       edx,[r15+14]
jne       short M00_L16
mov       edx,[r14+10]
cmp       edx,[r15+10]
jae       short M00_L17
lea       rcx,[r14+8]
mov       r13,[r15+8]
mov       r12d,[r14+10]
cmp       r12d,[r13+8]
jae       short M00_L14
mov       edx,r12d
mov       rdx,[r13+rdx*8+10]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
inc       dword ptr [r14+10]
jmp       short M00_L11
M00_L14
 
call      CORINFO_HELP_RNGCHKFAIL
M00_L15
 
mov       r11,7FF9F5CA10E8
call      qword ptr [r11]
test      eax,eax
jne       near ptr M00_L23
jmp       near ptr M00_L26
M00_L16
 
mov       r11d,[r14+14]
mov       rax,[r14]
cmp       r11d,[rax+14]
jne       near ptr M00_L22
M00_L17
 
mov       r11,[r14]
mov       r11d,[r11+10]
inc       r11d
mov       [r14+10],r11d
xor       r11d,r11d
mov       [r14+8],r11
jmp       near ptr M00_L26
M00_L18
 
mov       rcx,[rbp-58]
mov       rax,[rcx+10]
M00_L19
 
mov       [rbp-40],rax
mov       rcx,[rbx+18]
lea       r8,[rbp-40]
mov       rdx,offset MD_BenchmarkDotNet.Engines.Consumer.Consume[[System.String, System.Private.CoreLib]](System.String ByRef)
cmp       [rcx],ecx
call      qword ptr [7FF9F68A7A98]; BenchmarkDotNet.Engines.Consumer.Consume[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef)
mov       rcx,[rbp-58]
M00_L20
 
mov       rsi,[rcx]
mov       rdi,offset MT_System.Collections.Generic.List`1+Enumerator[[System.String, System.Private.CoreLib]]
cmp       rsi,rdi
jne       short M00_L21
lea       r14,[rcx+8]
mov       r15,[r14]
mov       eax,[r14+14]
cmp       eax,[r15+14]
jne       short M00_L24
mov       r12d,[r14+10]
cmp       r12d,[r15+10]
jae       short M00_L25
lea       rcx,[r14+8]
mov       r13,[r15+8]
cmp       r12d,[r13+8]
jae       near ptr M00_L14
mov       edx,r12d
mov       rdx,[r13+rdx*8+10]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
inc       dword ptr [r14+10]
jmp       short M00_L18
M00_L21
 
mov       r11,7FF9F5CA10E8
call      qword ptr [r11]
test      eax,eax
je        short M00_L26
mov       rcx,[rbp-58]
mov       r11,7FF9F5CA10F0
call      qword ptr [r11]
jmp       near ptr M00_L19
M00_L22
 
call      qword ptr [7FF9F604EFE8]
int       3
M00_L23
 
mov       rcx,[rbp-58]
mov       r11,7FF9F5CA10F0
call      qword ptr [r11]
jmp       near ptr M00_L12
M00_L24
 
mov       r11,[r14]
cmp       eax,[r11+14]
jne       short M00_L22
M00_L25
 
mov       r11,[r14]
mov       r11d,[r11+10]
inc       r11d
mov       [r14+10],r11d
xor       r11d,r11d
mov       [r14+8],r11
M00_L26
 
cmp       rsi,rdi
jne       near ptr M00_L34
M00_L27
 
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M00_L28
 
call      qword ptr [7FF9F6365368]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L29
call      qword ptr [7FF9F63650B0]
mov       rbx,rax
M00_L29
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,25EF33D8468
mov       r8,rbx
call      qword ptr [7FF9F6076670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L30
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DE73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L05
M00_L31
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DE73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L09
M00_L32
 
call      qword ptr [7FF9F63652C0]
mov       ecx,43
mov       rdx,7FF9F62E3C60
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1446
mov       rdx,7FF9F6175A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DE6B08]; System.String.Concat(System.String, System.String)
mov       rdi,rax
mov       ecx,1
mov       rdx,7FF9F62E3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F5DE6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63650B0]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FF9F6076670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L33
 
mov       rcx,7FF9F5D25120
mov       edx,20
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,21E61402000
mov       rcx,[rcx]
jmp       near ptr M00_L10
M00_L34
 
mov       rcx,[rbp-58]
mov       r11,7FF9F5CA10F8
call      qword ptr [r11]
jmp       near ptr M00_L27
M00_L35
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M00_L36
mov       rcx,[rbp-58]
mov       rsi,[rcx]
mov       rdi,offset MT_System.Collections.Generic.List`1+Enumerator[[System.String, System.Private.CoreLib]]
cmp       rsi,rdi
je        short M00_L36
mov       r11,7FF9F5CA10F8
call      qword ptr [r11]
M00_L36
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,98
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
vmovdqa   xmmword ptr [rbp+20],xmm4
vmovdqa   xmmword ptr [rbp+30],xmm4
vmovdqa   xmmword ptr [rbp+40],xmm4
vmovdqa   xmmword ptr [rbp+50],xmm4
mov       [rbp+60],rax
mov       rax,624D2D2326A1
mov       [rbp],rax
mov       rbx,rcx
mov       esi,r8d
mov       edi,r9d
test      esi,esi
jl        near ptr M01_L12
test      edi,0FFFFFFFC
jne       near ptr M01_L13
cmp       esi,1
jle       short M01_L01
mov       r14d,[rbx+8]
test      r14d,r14d
je        short M01_L01
cmp       dword ptr [rdx+8],0
je        near ptr M01_L14
M01_L00
 
test      [rsp],esp
sub       rsp,200
lea       rcx,[rsp+30]
mov       [rbp+58],rcx
mov       dword ptr [rbp+60],80
xor       ecx,ecx
mov       [rbp+48],rcx
mov       [rbp+50],ecx
lea       rcx,[rbx+0C]
mov       [rbp+38],rcx
mov       [rbp+40],r14d
vmovdqu   xmm0,xmmword ptr [rdx]
vmovdqu   xmmword ptr [rbp+28],xmm0
lea       rcx,[rbp+38]
lea       rdx,[rbp+28]
lea       r8,[rbp+48]
call      qword ptr [7FF9F5DE71B0]; System.String.MakeSeparatorListAny(System.ReadOnlySpan`1, System.ReadOnlySpan`1, System.Collections.Generic.ValueListBuilder`1 ByRef)
mov       eax,[rbp+50]
cmp       eax,[rbp+60]
ja        near ptr M01_L06
mov       r8,[rbp+58]
test      eax,eax
jne       short M01_L07
mov       esi,1
M01_L01
 
test      esi,esi
je        near ptr M01_L16
mov       r14,rbx
test      dil,2
jne       near ptr M01_L15
M01_L02
 
test      dil,1
je        short M01_L03
cmp       dword ptr [r14+8],0
je        near ptr M01_L16
M01_L03
 
mov       rcx,offset MT_System.String[]
mov       edx,1
call      CORINFO_HELP_NEWARR_1_OBJ
mov       r15,rax
lea       rcx,[r15+10]
mov       rdx,r14
call      CORINFO_HELP_ASSIGN_REF
mov       rax,r15
M01_L04
 
mov       rcx,624D2D2326A1
cmp       [rbp],rcx
je        short M01_L05
call      CORINFO_HELP_FAIL_FAST
M01_L05
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L06
 
call      qword ptr [7FF9F604E9D0]
int       3
M01_L07
 
test      edi,edi
jne       short M01_L08
xor       edi,edi
mov       [rbp+18],r8
mov       [rbp+20],eax
mov       [rbp+8],rdi
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],esi
mov       rcx,rbx
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DE7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       r14,rax
jmp       short M01_L09
M01_L08
 
xor       ecx,ecx
mov       [rbp+18],r8
mov       [rbp+20],eax
mov       [rbp+8],rcx
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],esi
mov       [rsp+28],edi
mov       rcx,rbx
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DE7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       r14,rax
M01_L09
 
mov       rdx,[rbp+48]
test      rdx,rdx
je        short M01_L10
xor       ecx,ecx
mov       [rbp+48],rcx
mov       rcx,21E61401F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65E4BE8]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M01_L10
 
mov       rax,r14
mov       rcx,624D2D2326A1
cmp       [rbp],rcx
je        short M01_L11
call      CORINFO_HELP_FAIL_FAST
M01_L11
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L12
 
mov       ecx,1C7
mov       rdx,7FF9F5C94000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,esi
call      qword ptr [7FF9F68AE520]
int       3
M01_L13
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F604ECB8]
int       3
M01_L14
 
mov       ecx,edi
and       ecx,0FFFFFFFD
cmp       r14d,esi
cmovl     edi,ecx
jmp       near ptr M01_L00
M01_L15
 
mov       rcx,rbx
cmp       [rcx],ecx
call      qword ptr [7FF9F5DE7318]; System.String.Trim()
mov       r14,rax
jmp       near ptr M01_L02
M01_L16
 
mov       rcx,7FF9F5D25120
mov       edx,78
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rax,21E61401FF8
mov       rax,[rax]
jmp       near ptr M01_L04
 
System.Collections.Generic.List`1[[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1)
push      rbp
push      rdi
push      rsi
push      rbx
sub       rsp,38
lea       rbp,[rsp+50]
mov       [rbp-30],rsp
mov       [rbp-20],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
test      rbx,rbx
je        near ptr M02_L19
mov       rsi,[rcx]
mov       rdx,rsi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       rax,[rax+68]
test      rax,rax
je        near ptr M02_L05
M02_L00
 
mov       rcx,rax
mov       rdx,rbx
call      qword ptr [7FF9F5DE4348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       rdi,rax
test      rdi,rdi
je        near ptr M02_L09
mov       rcx,[rsi+30]
mov       rcx,[rcx]
mov       r11,[rcx+80]
test      r11,r11
je        near ptr M02_L06
M02_L01
 
mov       rcx,rdi
call      qword ptr [r11]
mov       ebx,eax
test      ebx,ebx
jle       near ptr M02_L17
mov       rcx,[rbp+10]
mov       rdx,[rcx+8]
mov       eax,[rdx+8]
mov       r8d,[rcx+10]
sub       eax,r8d
cmp       eax,ebx
jge       short M02_L03
add       r8d,ebx
jo        near ptr M02_L18
cmp       dword ptr [rdx+8],0
jne       near ptr M02_L08
mov       edx,4
M02_L02
 
mov       eax,7FFFFFC7
cmp       edx,7FFFFFC7
cmova     edx,eax
cmp       edx,r8d
cmovl     edx,r8d
call      qword ptr [7FF9F5E9DFF8]; System.Collections.Generic.List`1[[System.__Canon, System.Private.CoreLib]].set_Capacity(Int32)
mov       rcx,[rbp+10]
M02_L03
 
mov       rdx,[rsi+30]
mov       rdx,[rdx]
mov       r11,[rdx+88]
test      r11,r11
je        short M02_L07
M02_L04
 
mov       rdx,[rcx+8]
mov       r8d,[rcx+10]
mov       rcx,rdi
call      qword ptr [r11]
mov       rcx,[rbp+10]
add       [rcx+10],ebx
inc       dword ptr [rcx+14]
add       rsp,38
pop       rbx
pop       rsi
pop       rdi
pop       rbp
ret
M02_L05
 
mov       rcx,rdx
mov       rdx,7FF9F6A1AF18
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
jmp       near ptr M02_L00
M02_L06
 
mov       rcx,rsi
mov       rdx,7FF9F6A1AF58
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M02_L01
M02_L07
 
mov       rcx,rsi
mov       rdx,7FF9F6A1AF70
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
mov       rcx,[rbp+10]
jmp       short M02_L04
M02_L08
 
mov       edx,[rdx+8]
add       edx,edx
jmp       near ptr M02_L02
M02_L09
 
mov       rcx,[rsi+30]
mov       rcx,[rcx]
mov       r11,[rcx+70]
test      r11,r11
je        short M02_L10
jmp       short M02_L11
M02_L10
 
mov       rcx,rsi
mov       rdx,7FF9F6A1AF28
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M02_L11
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-28],rax
jmp       short M02_L16
M02_L12
 
mov       rcx,[rsi+30]
mov       rcx,[rcx]
mov       r11,[rcx+78]
test      r11,r11
je        short M02_L13
jmp       short M02_L14
M02_L13
 
mov       rcx,rsi
mov       rdx,7FF9F6A1AF40
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M02_L14
 
mov       rcx,[rbp-28]
call      qword ptr [r11]
mov       r8,rax
mov       rcx,[rbp+10]
inc       dword ptr [rcx+14]
mov       rax,[rcx+8]
mov       edx,[rcx+10]
cmp       [rax+8],edx
jbe       short M02_L15
lea       r10d,[rdx+1]
mov       [rcx+10],r10d
movsxd    rdx,edx
mov       rcx,rax
call      CORINFO_HELP_ARRADDR_ST
jmp       short M02_L16
M02_L15
 
mov       rdx,r8
call      qword ptr [7FF9F5E9E130]; System.Collections.Generic.List`1[[System.__Canon, System.Private.CoreLib]].AddWithResize(System.__Canon)
M02_L16
 
mov       rcx,[rbp-28]
mov       r11,7FF9F5CA1110
call      qword ptr [r11]
test      eax,eax
jne       short M02_L12
mov       rcx,rsp
call      M02_L20
nop
M02_L17
 
add       rsp,38
pop       rbx
pop       rsi
pop       rdi
pop       rbp
ret
M02_L18
 
call      CORINFO_HELP_OVERFLOW
M02_L19
 
mov       ecx,17
call      qword ptr [7FF9F604ED00]
int       3
M02_L20
 
push      rbp
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+50]
cmp       qword ptr [rbp-28],0
je        short M02_L21
mov       rcx,[rbp-28]
mov       r11,7FF9F5CA1118
call      qword ptr [r11]
M02_L21
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       rbp
ret
 
BenchmarkDotNet.Engines.Consumer.Consume[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef)
push      rbx
mov       rbx,rcx
mov       rdx,[r8]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
pop       rbx
ret
 
System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,edx
mov       edi,[rbx+8]
lea       ebp,[rdi-1]
mov       r14d,ebp
xor       r15d,r15d
test      sil,1
je        short M04_L03
xor       r15d,r15d
test      edi,edi
jle       short M04_L03
M04_L00
 
mov       ecx,r15d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L01
mov       rax,[7FFA534C0728]
test      byte ptr [rax+rcx],80
je        short M04_L03
jmp       short M04_L02
M04_L01
 
call      qword ptr [7FFA534A7338]
test      eax,eax
je        short M04_L03
M04_L02
 
inc       r15d
cmp       edi,r15d
jg        short M04_L00
M04_L03
 
test      sil,2
je        near ptr M04_L10
mov       r14d,ebp
cmp       r14d,r15d
jl        short M04_L10
mov       ecx,r14d
or        ecx,r15d
jl        short M04_L07
cmp       edi,r14d
jle       short M04_L07
M04_L04
 
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L05
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L06
M04_L05
 
call      qword ptr [7FFA534A7338]
test      eax,eax
je        short M04_L10
M04_L06
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L04
jmp       short M04_L10
M04_L07
 
cmp       r14d,edi
jae       short M04_L14
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L08
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L09
M04_L08
 
call      qword ptr [7FFA534A7338]
test      eax,eax
je        short M04_L10
M04_L09
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L07
M04_L10
 
mov       r8d,r14d
sub       r8d,r15d
inc       r8d
cmp       edi,r8d
jne       short M04_L12
mov       rax,rbx
M04_L11
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L12
 
test      r8d,r8d
je        short M04_L13
mov       rcx,rbx
mov       edx,r15d
call      qword ptr [7FFA534A34A0]; Precode of System.String.InternalSubString(Int32, Int32)
jmp       short M04_L11
M04_L13
 
mov       rax,[7FFA534C08A0]
mov       rax,[rax]
jmp       short M04_L11
M04_L14
 
call      qword ptr [7FFA53493D20]; CORINFO_HELP_RNGCHKFAIL
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M05_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M05_L02
test      rbx,rbx
je        short M05_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M05_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M05_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FF9F5E95B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FF9F5E95B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M05_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M05_L01
 
call      qword ptr [7FF9F604EF40]
int       3
M05_L02
 
test      rbx,rbx
je        short M05_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M05_L04
M05_L03
 
mov       rax,25EF33D0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M05_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.SplitRemoveEmpty()
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,48
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
xor       eax,eax
mov       [rbp-40],rax
mov       [rbp-60],rsp
mov       rbx,rcx
mov       rsi,[rbx+298]
test      rsi,rsi
je        short M00_L00
xor       ecx,ecx
cmp       dword ptr [rsi+8],0
sete      cl
test      ecx,ecx
sete      cl
movzx     ecx,cl
cmp       dword ptr [rsi+8],0
jne       short M00_L01
jmp       short M00_L01
M00_L00
 
xor       ecx,ecx
M00_L01
 
test      ecx,ecx
je        near ptr M00_L28
cmp       dword ptr [rsi+8],0
je        short M00_L05
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       short M00_L02
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L30
jmp       short M00_L03
M00_L02
 
call      qword ptr [7FF9F68DEAF0]
test      eax,eax
jne       near ptr M00_L30
M00_L03
 
mov       ecx,[rsi+8]
dec       ecx
cmp       ecx,[rsi+8]
jae       near ptr M00_L35
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L04
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L30
jmp       short M00_L05
M00_L04
 
call      qword ptr [7FF9F68DEAF0]
test      eax,eax
jne       near ptr M00_L30
M00_L05
 
mov       edi,[rsi+8]
test      edi,edi
je        short M00_L09
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       short M00_L06
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L31
jmp       short M00_L07
M00_L06
 
call      qword ptr [7FF9F68DEAF0]
test      eax,eax
jne       near ptr M00_L31
M00_L07
 
dec       edi
mov       ecx,edi
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L08
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L31
jmp       short M00_L09
M00_L08
 
call      qword ptr [7FF9F68DEAF0]
test      eax,eax
jne       near ptr M00_L31
M00_L09
 
mov       rcx,offset MT_System.Char[]
mov       edx,1
call      CORINFO_HELP_NEWARR_1_VC
mov       word ptr [rax+10],2C
cmp       [rsi],sil
add       rax,10
mov       rcx,rsi
mov       [rbp-50],rax
mov       dword ptr [rbp-48],1
lea       rdx,[rbp-50]
mov       r8d,7FFFFFFF
mov       r9d,1
call      qword ptr [7FF9F5DE70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
mov       rsi,rax
mov       rcx,offset MT_System.Collections.Generic.List`1[[System.String, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       rcx,2CD3D401D90
mov       rdx,[rcx]
lea       rcx,[rdi+8]
call      CORINFO_HELP_ASSIGN_REF
mov       rdx,rsi
test      rdx,rdx
je        near ptr M00_L32
mov       rcx,rdi
call      qword ptr [7FF9F5E9E160]; System.Collections.Generic.List`1[[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1)
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyCollection`1[[System.String, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
lea       rcx,[rsi+8]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rsi+8]
mov       r11,7FF9F5CA1100
call      qword ptr [r11]
test      eax,eax
je        near ptr M00_L33
mov       rcx,[rsi+8]
mov       r11,7FF9F5CA1108
call      qword ptr [r11]
mov       rcx,rax
M00_L10
 
mov       [rbp-58],rcx
test      rcx,rcx
je        near ptr M00_L20
mov       rsi,[rcx]
mov       rdi,offset MT_System.Collections.Generic.List`1+Enumerator[[System.String, System.Private.CoreLib]]
cmp       rsi,rdi
jne       near ptr M00_L20
jmp       short M00_L13
M00_L11
 
mov       rcx,[rbp-58]
mov       rax,[rcx+10]
M00_L12
 
mov       [rbp-40],rax
mov       rcx,[rbx+18]
lea       r8,[rbp-40]
mov       rdx,offset MD_BenchmarkDotNet.Engines.Consumer.Consume[[System.String, System.Private.CoreLib]](System.String ByRef)
cmp       [rcx],ecx
call      qword ptr [7FF9F68A7D38]; BenchmarkDotNet.Engines.Consumer.Consume[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef)
mov       rcx,[rbp-58]
M00_L13
 
cmp       rsi,rdi
jne       short M00_L15
lea       r14,[rcx+8]
mov       r15,[r14]
mov       rax,r15
mov       edx,[r14+14]
cmp       edx,[rax+14]
jne       short M00_L16
mov       edx,[r14+10]
cmp       edx,[rax+10]
jae       short M00_L17
lea       rcx,[r14+8]
mov       r13,[rax+8]
mov       r12d,[r14+10]
cmp       r12d,[r13+8]
jae       short M00_L14
mov       edx,r12d
mov       rdx,[r13+rdx*8+10]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
inc       dword ptr [r14+10]
jmp       short M00_L11
M00_L14
 
call      CORINFO_HELP_RNGCHKFAIL
M00_L15
 
mov       r11,7FF9F5CA10E8
call      qword ptr [r11]
test      eax,eax
jne       near ptr M00_L23
jmp       near ptr M00_L26
M00_L16
 
mov       r11d,[r14+14]
cmp       r11d,[r15+14]
jne       near ptr M00_L22
M00_L17
 
mov       r11d,[r15+10]
inc       r11d
mov       [r14+10],r11d
xor       r11d,r11d
mov       [r14+8],r11
jmp       near ptr M00_L26
M00_L18
 
mov       rcx,[rbp-58]
mov       rax,[rcx+10]
M00_L19
 
mov       [rbp-40],rax
mov       rcx,[rbx+18]
lea       r8,[rbp-40]
mov       rdx,offset MD_BenchmarkDotNet.Engines.Consumer.Consume[[System.String, System.Private.CoreLib]](System.String ByRef)
cmp       [rcx],ecx
call      qword ptr [7FF9F68A7D38]; BenchmarkDotNet.Engines.Consumer.Consume[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef)
mov       rcx,[rbp-58]
M00_L20
 
mov       rsi,[rcx]
mov       rdi,offset MT_System.Collections.Generic.List`1+Enumerator[[System.String, System.Private.CoreLib]]
cmp       rsi,rdi
jne       short M00_L21
lea       r14,[rcx+8]
mov       rax,[r14]
mov       r15d,[r14+14]
cmp       r15d,[rax+14]
jne       short M00_L24
mov       r12d,[r14+10]
cmp       r12d,[rax+10]
jae       short M00_L25
lea       rcx,[r14+8]
mov       r13,[rax+8]
cmp       r12d,[r13+8]
jae       near ptr M00_L14
mov       edx,r12d
mov       rdx,[r13+rdx*8+10]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
inc       dword ptr [r14+10]
jmp       short M00_L18
M00_L21
 
mov       r11,7FF9F5CA10E8
call      qword ptr [r11]
test      eax,eax
je        short M00_L26
mov       rcx,[rbp-58]
mov       r11,7FF9F5CA10F0
call      qword ptr [r11]
jmp       near ptr M00_L19
M00_L22
 
call      qword ptr [7FF9F604EFE8]
int       3
M00_L23
 
mov       rcx,[rbp-58]
mov       r11,7FF9F5CA10F0
call      qword ptr [r11]
jmp       near ptr M00_L12
M00_L24
 
mov       r11,[r14]
cmp       r15d,[r11+14]
jne       short M00_L22
M00_L25
 
mov       r11,[r14]
mov       r11d,[r11+10]
inc       r11d
mov       [r14+10],r11d
xor       r11d,r11d
mov       [r14+8],r11
M00_L26
 
cmp       rsi,rdi
jne       near ptr M00_L34
M00_L27
 
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M00_L28
 
call      qword ptr [7FF9F6365368]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L29
call      qword ptr [7FF9F63650B0]
mov       rbx,rax
M00_L29
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,30DCF178468
mov       r8,rbx
call      qword ptr [7FF9F6076670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L30
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DE73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L05
M00_L31
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DE73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L09
M00_L32
 
call      qword ptr [7FF9F63652C0]
mov       ecx,43
mov       rdx,7FF9F62E3C60
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1446
mov       rdx,7FF9F6175A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DE6B08]; System.String.Concat(System.String, System.String)
mov       rdi,rax
mov       ecx,1
mov       rdx,7FF9F62E3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F5DE6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63650B0]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FF9F6076670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L33
 
mov       rcx,7FF9F5D25120
mov       edx,20
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,2CD3D402000
mov       rcx,[rcx]
jmp       near ptr M00_L10
M00_L34
 
mov       rcx,[rbp-58]
mov       r11,7FF9F5CA10F8
call      qword ptr [r11]
jmp       near ptr M00_L27
M00_L35
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M00_L36
mov       rcx,[rbp-58]
mov       rsi,[rcx]
mov       rdi,offset MT_System.Collections.Generic.List`1+Enumerator[[System.String, System.Private.CoreLib]]
cmp       rsi,rdi
je        short M00_L36
mov       r11,7FF9F5CA10F8
call      qword ptr [r11]
M00_L36
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,98
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
vmovdqa   xmmword ptr [rbp+20],xmm4
vmovdqa   xmmword ptr [rbp+30],xmm4
vmovdqa   xmmword ptr [rbp+40],xmm4
vmovdqa   xmmword ptr [rbp+50],xmm4
mov       [rbp+60],rax
mov       rax,0C58A1C21DB88
mov       [rbp],rax
mov       rbx,rcx
mov       esi,r8d
mov       edi,r9d
test      esi,esi
jl        near ptr M01_L12
test      edi,0FFFFFFFC
jne       near ptr M01_L13
cmp       esi,1
jle       short M01_L01
mov       r14d,[rbx+8]
test      r14d,r14d
je        short M01_L01
cmp       dword ptr [rdx+8],0
je        near ptr M01_L14
M01_L00
 
test      [rsp],esp
sub       rsp,200
lea       rcx,[rsp+30]
mov       [rbp+58],rcx
mov       dword ptr [rbp+60],80
xor       ecx,ecx
mov       [rbp+48],rcx
mov       [rbp+50],ecx
lea       rcx,[rbx+0C]
mov       [rbp+38],rcx
mov       [rbp+40],r14d
vmovdqu   xmm0,xmmword ptr [rdx]
vmovdqu   xmmword ptr [rbp+28],xmm0
lea       rcx,[rbp+38]
lea       rdx,[rbp+28]
lea       r8,[rbp+48]
call      qword ptr [7FF9F5DE71B0]; System.String.MakeSeparatorListAny(System.ReadOnlySpan`1, System.ReadOnlySpan`1, System.Collections.Generic.ValueListBuilder`1 ByRef)
mov       eax,[rbp+50]
cmp       eax,[rbp+60]
ja        near ptr M01_L06
mov       r8,[rbp+58]
test      eax,eax
jne       short M01_L07
mov       esi,1
M01_L01
 
test      esi,esi
je        near ptr M01_L16
mov       r14,rbx
test      dil,2
jne       near ptr M01_L15
M01_L02
 
test      dil,1
je        short M01_L03
cmp       dword ptr [r14+8],0
je        near ptr M01_L16
M01_L03
 
mov       rcx,offset MT_System.String[]
mov       edx,1
call      CORINFO_HELP_NEWARR_1_OBJ
mov       r15,rax
lea       rcx,[r15+10]
mov       rdx,r14
call      CORINFO_HELP_ASSIGN_REF
mov       rax,r15
M01_L04
 
mov       rcx,0C58A1C21DB88
cmp       [rbp],rcx
je        short M01_L05
call      CORINFO_HELP_FAIL_FAST
M01_L05
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L06
 
call      qword ptr [7FF9F604E9D0]
int       3
M01_L07
 
test      edi,edi
jne       short M01_L08
xor       edi,edi
mov       [rbp+18],r8
mov       [rbp+20],eax
mov       [rbp+8],rdi
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],esi
mov       rcx,rbx
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DE7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       r14,rax
jmp       short M01_L09
M01_L08
 
xor       ecx,ecx
mov       [rbp+18],r8
mov       [rbp+20],eax
mov       [rbp+8],rcx
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],esi
mov       [rsp+28],edi
mov       rcx,rbx
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DE7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       r14,rax
M01_L09
 
mov       rdx,[rbp+48]
test      rdx,rdx
je        short M01_L10
xor       ecx,ecx
mov       [rbp+48],rcx
mov       rcx,2CD3D401F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65E5240]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M01_L10
 
mov       rax,r14
mov       rcx,0C58A1C21DB88
cmp       [rbp],rcx
je        short M01_L11
call      CORINFO_HELP_FAIL_FAST
M01_L11
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L12
 
mov       ecx,1C7
mov       rdx,7FF9F5C94000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,esi
call      qword ptr [7FF9F68AE520]
int       3
M01_L13
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F604ECB8]
int       3
M01_L14
 
mov       ecx,edi
and       ecx,0FFFFFFFD
cmp       r14d,esi
cmovl     edi,ecx
jmp       near ptr M01_L00
M01_L15
 
mov       rcx,rbx
cmp       [rcx],ecx
call      qword ptr [7FF9F5DE7318]; System.String.Trim()
mov       r14,rax
jmp       near ptr M01_L02
M01_L16
 
mov       rcx,7FF9F5D25120
mov       edx,78
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rax,2CD3D401FF8
mov       rax,[rax]
jmp       near ptr M01_L04
 
System.Collections.Generic.List`1[[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1)
push      rbp
push      rdi
push      rsi
push      rbx
sub       rsp,38
lea       rbp,[rsp+50]
mov       [rbp-30],rsp
mov       [rbp-20],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
test      rbx,rbx
je        near ptr M02_L19
mov       rsi,[rcx]
mov       rdx,rsi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       rax,[rax+68]
test      rax,rax
je        short M02_L00
jmp       short M02_L01
M02_L00
 
mov       rcx,rdx
mov       rdx,7FF9F6A2E1F0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
M02_L01
 
mov       rcx,rax
mov       rdx,rbx
call      qword ptr [7FF9F5DE4348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       rdi,rax
test      rdi,rdi
je        near ptr M02_L09
mov       rcx,[rsi+30]
mov       rcx,[rcx]
mov       r11,[rcx+80]
test      r11,r11
je        short M02_L02
jmp       short M02_L03
M02_L02
 
mov       rcx,rsi
mov       rdx,7FF9F6A2E230
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M02_L03
 
mov       rcx,rdi
call      qword ptr [r11]
mov       ebx,eax
test      ebx,ebx
jle       near ptr M02_L17
mov       rcx,[rbp+10]
mov       rdx,[rcx+8]
mov       eax,[rdx+8]
mov       r8d,[rcx+10]
sub       eax,r8d
cmp       eax,ebx
jge       short M02_L05
add       r8d,ebx
jo        near ptr M02_L18
cmp       dword ptr [rdx+8],0
jne       short M02_L06
mov       edx,4
M02_L04
 
mov       eax,7FFFFFC7
cmp       edx,7FFFFFC7
cmova     edx,eax
cmp       edx,r8d
cmovl     edx,r8d
call      qword ptr [7FF9F5E9DFF8]; System.Collections.Generic.List`1[[System.__Canon, System.Private.CoreLib]].set_Capacity(Int32)
mov       rcx,[rbp+10]
M02_L05
 
mov       rdx,[rsi+30]
mov       rdx,[rdx]
mov       r11,[rdx+88]
test      r11,r11
je        short M02_L07
jmp       short M02_L08
M02_L06
 
mov       edx,[rdx+8]
add       edx,edx
jmp       short M02_L04
M02_L07
 
mov       rcx,rsi
mov       rdx,7FF9F6A2E248
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
mov       rcx,[rbp+10]
M02_L08
 
mov       rdx,[rcx+8]
mov       r8d,[rcx+10]
mov       rcx,rdi
call      qword ptr [r11]
mov       rcx,[rbp+10]
add       [rcx+10],ebx
inc       dword ptr [rcx+14]
add       rsp,38
pop       rbx
pop       rsi
pop       rdi
pop       rbp
ret
M02_L09
 
mov       rcx,[rsi+30]
mov       rcx,[rcx]
mov       r11,[rcx+70]
test      r11,r11
je        short M02_L10
jmp       short M02_L11
M02_L10
 
mov       rcx,rsi
mov       rdx,7FF9F6A2E200
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M02_L11
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-28],rax
jmp       short M02_L16
M02_L12
 
mov       rcx,[rsi+30]
mov       rcx,[rcx]
mov       r11,[rcx+78]
test      r11,r11
je        short M02_L13
jmp       short M02_L14
M02_L13
 
mov       rcx,rsi
mov       rdx,7FF9F6A2E218
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M02_L14
 
mov       rcx,[rbp-28]
call      qword ptr [r11]
mov       r8,rax
mov       rcx,[rbp+10]
inc       dword ptr [rcx+14]
mov       rax,[rcx+8]
mov       edx,[rcx+10]
cmp       [rax+8],edx
jbe       short M02_L15
lea       r10d,[rdx+1]
mov       [rcx+10],r10d
movsxd    rdx,edx
mov       rcx,rax
call      CORINFO_HELP_ARRADDR_ST
jmp       short M02_L16
M02_L15
 
mov       rdx,r8
call      qword ptr [7FF9F5E9E130]; System.Collections.Generic.List`1[[System.__Canon, System.Private.CoreLib]].AddWithResize(System.__Canon)
M02_L16
 
mov       rcx,[rbp-28]
mov       r11,7FF9F5CA1110
call      qword ptr [r11]
test      eax,eax
jne       short M02_L12
mov       rcx,rsp
call      M02_L20
nop
M02_L17
 
add       rsp,38
pop       rbx
pop       rsi
pop       rdi
pop       rbp
ret
M02_L18
 
call      CORINFO_HELP_OVERFLOW
M02_L19
 
mov       ecx,17
call      qword ptr [7FF9F604ED00]
int       3
M02_L20
 
push      rbp
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+50]
cmp       qword ptr [rbp-28],0
je        short M02_L21
mov       rcx,[rbp-28]
mov       r11,7FF9F5CA1118
call      qword ptr [r11]
M02_L21
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       rbp
ret
 
BenchmarkDotNet.Engines.Consumer.Consume[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef)
push      rbx
mov       rbx,rcx
mov       rdx,[r8]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
pop       rbx
ret
 
System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,edx
mov       edi,[rbx+8]
lea       ebp,[rdi-1]
mov       r14d,ebp
xor       r15d,r15d
test      sil,1
je        short M04_L03
xor       r15d,r15d
test      edi,edi
jle       short M04_L03
M04_L00
 
mov       ecx,r15d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L01
mov       rax,[7FFA534C0728]
test      byte ptr [rax+rcx],80
je        short M04_L03
jmp       short M04_L02
M04_L01
 
call      qword ptr [7FFA534A7338]
test      eax,eax
je        short M04_L03
M04_L02
 
inc       r15d
cmp       edi,r15d
jg        short M04_L00
M04_L03
 
test      sil,2
je        near ptr M04_L10
mov       r14d,ebp
cmp       r14d,r15d
jl        short M04_L10
mov       ecx,r14d
or        ecx,r15d
jl        short M04_L07
cmp       edi,r14d
jle       short M04_L07
M04_L04
 
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L05
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L06
M04_L05
 
call      qword ptr [7FFA534A7338]
test      eax,eax
je        short M04_L10
M04_L06
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L04
jmp       short M04_L10
M04_L07
 
cmp       r14d,edi
jae       short M04_L14
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M04_L08
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M04_L10
jmp       short M04_L09
M04_L08
 
call      qword ptr [7FFA534A7338]
test      eax,eax
je        short M04_L10
M04_L09
 
dec       r14d
cmp       r14d,r15d
jge       short M04_L07
M04_L10
 
mov       r8d,r14d
sub       r8d,r15d
inc       r8d
cmp       edi,r8d
jne       short M04_L12
mov       rax,rbx
M04_L11
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L12
 
test      r8d,r8d
je        short M04_L13
mov       rcx,rbx
mov       edx,r15d
call      qword ptr [7FFA534A34A0]; Precode of System.String.InternalSubString(Int32, Int32)
jmp       short M04_L11
M04_L13
 
mov       rax,[7FFA534C08A0]
mov       rax,[rax]
jmp       short M04_L11
M04_L14
 
call      qword ptr [7FFA53493D20]; CORINFO_HELP_RNGCHKFAIL
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M05_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M05_L02
test      rbx,rbx
je        short M05_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M05_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M05_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FF9F5E95B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FF9F5E95B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M05_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M05_L01
 
call      qword ptr [7FF9F604EF40]
int       3
M05_L02
 
test      rbx,rbx
je        short M05_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M05_L04
M05_L03
 
mov       rax,30DCF170008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M05_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.SplitRemoveEmpty()
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,48
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
xor       eax,eax
mov       [rbp-40],rax
mov       [rbp-60],rsp
mov       rbx,rcx
mov       rsi,[rbx+298]
test      rsi,rsi
je        short M00_L00
xor       ecx,ecx
cmp       dword ptr [rsi+8],0
sete      cl
test      ecx,ecx
sete      cl
movzx     ecx,cl
cmp       dword ptr [rsi+8],0
jne       short M00_L01
jmp       short M00_L01
M00_L00
 
xor       ecx,ecx
M00_L01
 
test      ecx,ecx
je        near ptr M00_L28
cmp       dword ptr [rsi+8],0
je        short M00_L05
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       short M00_L02
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L30
jmp       short M00_L03
M00_L02
 
call      qword ptr [7FF9F673E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L30
M00_L03
 
mov       ecx,[rsi+8]
dec       ecx
cmp       ecx,[rsi+8]
jae       near ptr M00_L35
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L04
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L30
jmp       short M00_L05
M00_L04
 
call      qword ptr [7FF9F673E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L30
M00_L05
 
mov       edi,[rsi+8]
test      edi,edi
je        short M00_L09
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       short M00_L06
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L31
jmp       short M00_L07
M00_L06
 
call      qword ptr [7FF9F673E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L31
M00_L07
 
dec       edi
mov       ecx,edi
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L08
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L31
jmp       short M00_L09
M00_L08
 
call      qword ptr [7FF9F673E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L31
M00_L09
 
mov       rcx,offset MT_System.Char[]
mov       edx,1
call      CORINFO_HELP_NEWARR_1_VC
mov       word ptr [rax+10],2C
cmp       [rsi],sil
add       rax,10
mov       rcx,rsi
mov       [rbp-50],rax
mov       dword ptr [rbp-48],1
lea       rdx,[rbp-50]
mov       r8d,7FFFFFFF
mov       r9d,1
call      qword ptr [7FF9F5DE70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
mov       rsi,rax
mov       rcx,offset MT_System.Collections.Generic.List`1[[System.String, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       rcx,1A744001D90
mov       rdx,[rcx]
lea       rcx,[rdi+8]
call      CORINFO_HELP_ASSIGN_REF
mov       rdx,rsi
test      rdx,rdx
je        near ptr M00_L32
mov       rcx,rdi
call      qword ptr [7FF9F5E9E160]; System.Collections.Generic.List`1[[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1)
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyCollection`1[[System.String, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
lea       rcx,[rsi+8]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rsi+8]
mov       r11,7FF9F5CA1100
call      qword ptr [r11]
test      eax,eax
je        near ptr M00_L33
mov       rcx,[rsi+8]
mov       r11,7FF9F5CA1108
call      qword ptr [r11]
mov       rcx,rax
M00_L10
 
mov       [rbp-58],rcx
test      rcx,rcx
je        near ptr M00_L20
mov       rsi,[rcx]
mov       rdi,offset MT_System.Collections.Generic.List`1+Enumerator[[System.String, System.Private.CoreLib]]
cmp       rsi,rdi
jne       near ptr M00_L20
jmp       short M00_L13
M00_L11
 
mov       rcx,[rbp-58]
mov       rax,[rcx+10]
M00_L12
 
mov       [rbp-40],rax
mov       rcx,[rbx+18]
lea       r8,[rbp-40]
mov       rdx,offset MD_BenchmarkDotNet.Engines.Consumer.Consume[[System.String, System.Private.CoreLib]](System.String ByRef)
cmp       [rcx],ecx
call      qword ptr [7FF9F68A7D38]; BenchmarkDotNet.Engines.Consumer.Consume[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef)
mov       rcx,[rbp-58]
M00_L13
 
cmp       rsi,rdi
jne       short M00_L15
lea       r14,[rcx+8]
mov       r15,[r14]
mov       edx,[r14+14]
cmp       edx,[r15+14]
jne       short M00_L16
mov       edx,[r14+10]
cmp       edx,[r15+10]
jae       short M00_L17
lea       rcx,[r14+8]
mov       r13,[r15+8]
mov       r12d,[r14+10]
cmp       r12d,[r13+8]
jae       short M00_L14
mov       edx,r12d
mov       rdx,[r13+rdx*8+10]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
inc       dword ptr [r14+10]
jmp       short M00_L11
M00_L14
 
call      CORINFO_HELP_RNGCHKFAIL
M00_L15
 
mov       r11,7FF9F5CA10E8
call      qword ptr [r11]
test      eax,eax
jne       near ptr M00_L23
jmp       near ptr M00_L26
M00_L16
 
mov       r11d,[r14+14]
mov       rax,[r14]
cmp       r11d,[rax+14]
jne       near ptr M00_L22
M00_L17
 
mov       r11,[r14]
mov       r11d,[r11+10]
inc       r11d
mov       [r14+10],r11d
xor       r11d,r11d
mov       [r14+8],r11
jmp       near ptr M00_L26
M00_L18
 
mov       rcx,[rbp-58]
mov       rax,[rcx+10]
M00_L19
 
mov       [rbp-40],rax
mov       rcx,[rbx+18]
lea       r8,[rbp-40]
mov       rdx,offset MD_BenchmarkDotNet.Engines.Consumer.Consume[[System.String, System.Private.CoreLib]](System.String ByRef)
cmp       [rcx],ecx
call      qword ptr [7FF9F68A7D38]; BenchmarkDotNet.Engines.Consumer.Consume[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef)
mov       rcx,[rbp-58]
M00_L20
 
mov       rsi,[rcx]
mov       rdi,offset MT_System.Collections.Generic.List`1+Enumerator[[System.String, System.Private.CoreLib]]
cmp       rsi,rdi
jne       short M00_L21
lea       r14,[rcx+8]
mov       r15,[r14]
mov       eax,[r14+14]
cmp       eax,[r15+14]
jne       short M00_L24
mov       r12d,[r14+10]
cmp       r12d,[r15+10]
jae       short M00_L25
lea       rcx,[r14+8]
mov       r13,[r15+8]
cmp       r12d,[r13+8]
jae       near ptr M00_L14
mov       edx,r12d
mov       rdx,[r13+rdx*8+10]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
inc       dword ptr [r14+10]
jmp       short M00_L18
M00_L21
 
mov       r11,7FF9F5CA10E8
call      qword ptr [r11]
test      eax,eax
je        short M00_L26
mov       rcx,[rbp-58]
mov       r11,7FF9F5CA10F0
call      qword ptr [r11]
jmp       near ptr M00_L19
M00_L22
 
call      qword ptr [7FF9F604EFE8]
int       3
M00_L23
 
mov       rcx,[rbp-58]
mov       r11,7FF9F5CA10F0
call      qword ptr [r11]
jmp       near ptr M00_L12
M00_L24
 
mov       r11,[r14]
cmp       eax,[r11+14]
jne       short M00_L22
M00_L25
 
mov       r11,[r14]
mov       r11d,[r11+10]
inc       r11d
mov       [r14+10],r11d
xor       r11d,r11d
mov       [r14+8],r11
M00_L26
 
cmp       rsi,rdi
jne       near ptr M00_L34
M00_L27
 
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M00_L28
 
call      qword ptr [7FF9F6365368]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L29
call      qword ptr [7FF9F63650B0]
mov       rbx,rax
M00_L29
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,1E7CDF48468
mov       r8,rbx
call      qword ptr [7FF9F6076670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L30
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DE73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L05
M00_L31
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DE73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L09
M00_L32
 
call      qword ptr [7FF9F63652C0]
mov       ecx,43
mov       rdx,7FF9F62E3C60
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1446
mov       rdx,7FF9F6175A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DE6B08]; System.String.Concat(System.String, System.String)
mov       rdi,rax
mov       ecx,1
mov       rdx,7FF9F62E3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F5DE6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63650B0]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FF9F6076670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L33
 
mov       rcx,7FF9F5D25120
mov       edx,20
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,1A744002008
mov       rcx,[rcx]
jmp       near ptr M00_L10
M00_L34
 
mov       rcx,[rbp-58]
mov       r11,7FF9F5CA10F8
call      qword ptr [r11]
jmp       near ptr M00_L27
M00_L35
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M00_L36
mov       rcx,[rbp-58]
mov       rsi,[rcx]
mov       rdi,offset MT_System.Collections.Generic.List`1+Enumerator[[System.String, System.Private.CoreLib]]
cmp       rsi,rdi
je        short M00_L36
mov       r11,7FF9F5CA10F8
call      qword ptr [r11]
M00_L36
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
sub       rsp,28
movzx     ecx,cx
call      qword ptr [7FFA534A7370]; Precode of System.Globalization.CharUnicodeInfo.GetCategoryCasingTableOffsetNoBoundsChecks(UInt32)
mov       rcx,[7FFA534C0750]
cmp       byte ptr [rcx+rax],0
setl      al
movzx     eax,al
add       rsp,28
ret
 
System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,98
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
vmovdqa   xmmword ptr [rbp+20],xmm4
vmovdqa   xmmword ptr [rbp+30],xmm4
vmovdqa   xmmword ptr [rbp+40],xmm4
vmovdqa   xmmword ptr [rbp+50],xmm4
mov       [rbp+60],rax
mov       rax,6E20884D4742
mov       [rbp],rax
mov       rbx,rcx
mov       esi,r8d
mov       edi,r9d
test      esi,esi
jl        near ptr M02_L12
test      edi,0FFFFFFFC
jne       near ptr M02_L13
cmp       esi,1
jle       short M02_L01
mov       r14d,[rbx+8]
test      r14d,r14d
je        short M02_L01
cmp       dword ptr [rdx+8],0
je        near ptr M02_L14
M02_L00
 
test      [rsp],esp
sub       rsp,200
lea       rcx,[rsp+30]
mov       [rbp+58],rcx
mov       dword ptr [rbp+60],80
xor       ecx,ecx
mov       [rbp+48],rcx
mov       [rbp+50],ecx
lea       rcx,[rbx+0C]
mov       [rbp+38],rcx
mov       [rbp+40],r14d
vmovdqu   xmm0,xmmword ptr [rdx]
vmovdqu   xmmword ptr [rbp+28],xmm0
lea       rcx,[rbp+38]
lea       rdx,[rbp+28]
lea       r8,[rbp+48]
call      qword ptr [7FF9F5DE71B0]; System.String.MakeSeparatorListAny(System.ReadOnlySpan`1, System.ReadOnlySpan`1, System.Collections.Generic.ValueListBuilder`1 ByRef)
mov       eax,[rbp+50]
cmp       eax,[rbp+60]
ja        near ptr M02_L06
mov       r8,[rbp+58]
test      eax,eax
jne       short M02_L07
mov       esi,1
M02_L01
 
test      esi,esi
je        near ptr M02_L16
mov       r14,rbx
test      dil,2
jne       near ptr M02_L15
M02_L02
 
test      dil,1
je        short M02_L03
cmp       dword ptr [r14+8],0
je        near ptr M02_L16
M02_L03
 
mov       rcx,offset MT_System.String[]
mov       edx,1
call      CORINFO_HELP_NEWARR_1_OBJ
mov       r15,rax
lea       rcx,[r15+10]
mov       rdx,r14
call      CORINFO_HELP_ASSIGN_REF
mov       rax,r15
M02_L04
 
mov       rcx,6E20884D4742
cmp       [rbp],rcx
je        short M02_L05
call      CORINFO_HELP_FAIL_FAST
M02_L05
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M02_L06
 
call      qword ptr [7FF9F604E9D0]
int       3
M02_L07
 
test      edi,edi
jne       short M02_L08
xor       edi,edi
mov       [rbp+18],r8
mov       [rbp+20],eax
mov       [rbp+8],rdi
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],esi
mov       rcx,rbx
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DE7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       r14,rax
jmp       short M02_L09
M02_L08
 
xor       ecx,ecx
mov       [rbp+18],r8
mov       [rbp+20],eax
mov       [rbp+8],rcx
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],esi
mov       [rsp+28],edi
mov       rcx,rbx
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DE7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       r14,rax
M02_L09
 
mov       rdx,[rbp+48]
test      rdx,rdx
je        short M02_L10
xor       ecx,ecx
mov       [rbp+48],rcx
mov       rcx,1A744001F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65E51D0]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M02_L10
 
mov       rax,r14
mov       rcx,6E20884D4742
cmp       [rbp],rcx
je        short M02_L11
call      CORINFO_HELP_FAIL_FAST
M02_L11
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M02_L12
 
mov       ecx,1C7
mov       rdx,7FF9F5C94000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,esi
call      qword ptr [7FF9F68AE520]
int       3
M02_L13
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F604ECB8]
int       3
M02_L14
 
mov       ecx,edi
and       ecx,0FFFFFFFD
cmp       r14d,esi
cmovl     edi,ecx
jmp       near ptr M02_L00
M02_L15
 
mov       rcx,rbx
cmp       [rcx],ecx
call      qword ptr [7FF9F5DE7318]; System.String.Trim()
mov       r14,rax
jmp       near ptr M02_L02
M02_L16
 
mov       rcx,7FF9F5D25120
mov       edx,79
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rax,1A744002000
mov       rax,[rax]
jmp       near ptr M02_L04
 
System.Collections.Generic.List`1[[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1)
push      rbp
push      rdi
push      rsi
push      rbx
sub       rsp,38
lea       rbp,[rsp+50]
mov       [rbp-30],rsp
mov       [rbp-20],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
test      rbx,rbx
je        near ptr M03_L19
mov       rsi,[rcx]
mov       rdx,rsi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       rax,[rax+68]
test      rax,rax
je        short M03_L00
jmp       short M03_L01
M03_L00
 
mov       rcx,rdx
mov       rdx,7FF9F6A1F400
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
M03_L01
 
mov       rcx,rax
mov       rdx,rbx
call      qword ptr [7FF9F5DE4348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       rdi,rax
test      rdi,rdi
je        near ptr M03_L09
mov       rcx,[rsi+30]
mov       rcx,[rcx]
mov       r11,[rcx+80]
test      r11,r11
je        short M03_L02
jmp       short M03_L03
M03_L02
 
mov       rcx,rsi
mov       rdx,7FF9F6A1F440
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M03_L03
 
mov       rcx,rdi
call      qword ptr [r11]
mov       ebx,eax
test      ebx,ebx
jle       near ptr M03_L17
mov       rcx,[rbp+10]
mov       rdx,[rcx+8]
mov       eax,[rdx+8]
mov       r8d,[rcx+10]
sub       eax,r8d
cmp       eax,ebx
jge       short M03_L05
add       r8d,ebx
jo        near ptr M03_L18
cmp       dword ptr [rdx+8],0
jne       short M03_L06
mov       edx,4
M03_L04
 
mov       eax,7FFFFFC7
cmp       edx,7FFFFFC7
cmova     edx,eax
cmp       edx,r8d
cmovl     edx,r8d
call      qword ptr [7FF9F5E9DFF8]; System.Collections.Generic.List`1[[System.__Canon, System.Private.CoreLib]].set_Capacity(Int32)
mov       rcx,[rbp+10]
M03_L05
 
mov       rdx,[rsi+30]
mov       rdx,[rdx]
mov       r11,[rdx+88]
test      r11,r11
je        short M03_L07
jmp       short M03_L08
M03_L06
 
mov       edx,[rdx+8]
add       edx,edx
jmp       short M03_L04
M03_L07
 
mov       rcx,rsi
mov       rdx,7FF9F6A1F458
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
mov       rcx,[rbp+10]
M03_L08
 
mov       rdx,[rcx+8]
mov       r8d,[rcx+10]
mov       rcx,rdi
call      qword ptr [r11]
mov       rcx,[rbp+10]
add       [rcx+10],ebx
inc       dword ptr [rcx+14]
add       rsp,38
pop       rbx
pop       rsi
pop       rdi
pop       rbp
ret
M03_L09
 
mov       rcx,[rsi+30]
mov       rcx,[rcx]
mov       r11,[rcx+70]
test      r11,r11
je        short M03_L10
jmp       short M03_L11
M03_L10
 
mov       rcx,rsi
mov       rdx,7FF9F6A1F410
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M03_L11
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-28],rax
jmp       short M03_L16
M03_L12
 
mov       rcx,[rsi+30]
mov       rcx,[rcx]
mov       r11,[rcx+78]
test      r11,r11
je        short M03_L13
jmp       short M03_L14
M03_L13
 
mov       rcx,rsi
mov       rdx,7FF9F6A1F428
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M03_L14
 
mov       rcx,[rbp-28]
call      qword ptr [r11]
mov       r8,rax
mov       rcx,[rbp+10]
inc       dword ptr [rcx+14]
mov       rax,[rcx+8]
mov       edx,[rcx+10]
cmp       [rax+8],edx
jbe       short M03_L15
lea       r10d,[rdx+1]
mov       [rcx+10],r10d
movsxd    rdx,edx
mov       rcx,rax
call      CORINFO_HELP_ARRADDR_ST
jmp       short M03_L16
M03_L15
 
mov       rdx,r8
call      qword ptr [7FF9F5E9E130]; System.Collections.Generic.List`1[[System.__Canon, System.Private.CoreLib]].AddWithResize(System.__Canon)
M03_L16
 
mov       rcx,[rbp-28]
mov       r11,7FF9F5CA1110
call      qword ptr [r11]
test      eax,eax
jne       short M03_L12
mov       rcx,rsp
call      M03_L20
nop
M03_L17
 
add       rsp,38
pop       rbx
pop       rsi
pop       rdi
pop       rbp
ret
M03_L18
 
call      CORINFO_HELP_OVERFLOW
M03_L19
 
mov       ecx,17
call      qword ptr [7FF9F604ED00]
int       3
M03_L20
 
push      rbp
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+50]
cmp       qword ptr [rbp-28],0
je        short M03_L21
mov       rcx,[rbp-28]
mov       r11,7FF9F5CA1118
call      qword ptr [r11]
M03_L21
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       rbp
ret
 
BenchmarkDotNet.Engines.Consumer.Consume[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef)
push      rbx
mov       rbx,rcx
mov       rdx,[r8]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
pop       rbx
ret
 
System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,edx
mov       edi,[rbx+8]
lea       ebp,[rdi-1]
mov       r14d,ebp
xor       r15d,r15d
test      sil,1
je        short M05_L03
xor       r15d,r15d
test      edi,edi
jle       short M05_L03
M05_L00
 
mov       ecx,r15d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M05_L01
mov       rax,[7FFA534C0728]
test      byte ptr [rax+rcx],80
je        short M05_L03
jmp       short M05_L02
M05_L01
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M05_L03
M05_L02
 
inc       r15d
cmp       edi,r15d
jg        short M05_L00
M05_L03
 
test      sil,2
je        near ptr M05_L10
mov       r14d,ebp
cmp       r14d,r15d
jl        short M05_L10
mov       ecx,r14d
or        ecx,r15d
jl        short M05_L07
cmp       edi,r14d
jle       short M05_L07
M05_L04
 
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M05_L05
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M05_L10
jmp       short M05_L06
M05_L05
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M05_L10
M05_L06
 
dec       r14d
cmp       r14d,r15d
jge       short M05_L04
jmp       short M05_L10
M05_L07
 
cmp       r14d,edi
jae       short M05_L14
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M05_L08
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M05_L10
jmp       short M05_L09
M05_L08
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M05_L10
M05_L09
 
dec       r14d
cmp       r14d,r15d
jge       short M05_L07
M05_L10
 
mov       r8d,r14d
sub       r8d,r15d
inc       r8d
cmp       edi,r8d
jne       short M05_L12
mov       rax,rbx
M05_L11
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M05_L12
 
test      r8d,r8d
je        short M05_L13
mov       rcx,rbx
mov       edx,r15d
call      qword ptr [7FFA534A34A0]; Precode of System.String.InternalSubString(Int32, Int32)
jmp       short M05_L11
M05_L13
 
mov       rax,[7FFA534C08A0]
mov       rax,[rax]
jmp       short M05_L11
M05_L14
 
call      qword ptr [7FFA53493D20]; CORINFO_HELP_RNGCHKFAIL
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M06_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M06_L02
test      rbx,rbx
je        short M06_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M06_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M06_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FF9F5E95B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FF9F5E95B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M06_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M06_L01
 
call      qword ptr [7FF9F604EF40]
int       3
M06_L02
 
test      rbx,rbx
je        short M06_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M06_L04
M06_L03
 
mov       rax,1E7CDF40008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M06_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.SplitRemoveEmpty()
push      rbp
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbx
sub       rsp,50
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqu   xmmword ptr [rbp-48],xmm4
xor       eax,eax
mov       [rbp-38],rax
mov       [rbp-60],rsp
mov       rbx,rcx
mov       rsi,[rbx+298]
test      rsi,rsi
je        short M00_L00
xor       ecx,ecx
cmp       dword ptr [rsi+8],0
sete      cl
test      ecx,ecx
sete      cl
movzx     ecx,cl
cmp       dword ptr [rsi+8],0
jne       short M00_L01
jmp       short M00_L01
M00_L00
 
xor       ecx,ecx
M00_L01
 
test      ecx,ecx
je        near ptr M00_L20
cmp       dword ptr [rsi+8],0
je        short M00_L05
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       short M00_L02
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L22
jmp       short M00_L03
M00_L02
 
call      qword ptr [7FF9F673E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L22
M00_L03
 
mov       ecx,[rsi+8]
dec       ecx
cmp       ecx,[rsi+8]
jae       near ptr M00_L27
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L04
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L22
jmp       short M00_L05
M00_L04
 
call      qword ptr [7FF9F673E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L22
M00_L05
 
cmp       dword ptr [rsi+8],0
je        short M00_L09
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       short M00_L06
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L23
jmp       short M00_L07
M00_L06
 
call      qword ptr [7FF9F673E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L23
M00_L07
 
mov       ecx,[rsi+8]
dec       ecx
cmp       ecx,[rsi+8]
jae       near ptr M00_L27
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L08
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L23
jmp       short M00_L09
M00_L08
 
call      qword ptr [7FF9F673E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L23
M00_L09
 
mov       rcx,offset MT_System.Char[]
mov       edx,1
call      CORINFO_HELP_NEWARR_1_VC
mov       word ptr [rax+10],2C
cmp       [rsi],sil
add       rax,10
mov       rcx,rsi
mov       [rbp-48],rax
mov       dword ptr [rbp-40],1
lea       rdx,[rbp-48]
mov       r8d,7FFFFFFF
mov       r9d,1
call      qword ptr [7FF9F5DE70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
mov       rsi,rax
mov       rcx,offset MT_System.Collections.Generic.List`1[[System.String, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       rcx,243F1C01D90
mov       rdx,[rcx]
lea       rcx,[rdi+8]
call      CORINFO_HELP_ASSIGN_REF
mov       rdx,rsi
test      rdx,rdx
je        near ptr M00_L24
mov       rcx,rdi
call      qword ptr [7FF9F5E9E160]; System.Collections.Generic.List`1[[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1)
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyCollection`1[[System.String, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
lea       rcx,[rsi+8]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rsi+8]
mov       r11,7FF9F5CA1100
call      qword ptr [r11]
test      eax,eax
je        near ptr M00_L25
mov       rcx,[rsi+8]
mov       r11,7FF9F5CA1108
call      qword ptr [r11]
mov       rcx,rax
M00_L10
 
mov       [rbp-50],rcx
mov       rsi,[rcx]
mov       rdi,offset MT_System.Collections.Generic.List`1+Enumerator[[System.String, System.Private.CoreLib]]
M00_L11
 
cmp       rsi,rdi
jne       short M00_L14
lea       r14,[rcx+8]
mov       r15,[r14]
mov       rdx,r15
mov       eax,[r14+14]
cmp       eax,[rdx+14]
jne       near ptr M00_L16
mov       eax,[r14+10]
cmp       eax,[rdx+10]
jae       near ptr M00_L17
lea       rcx,[r14+8]
mov       rdx,[rdx+8]
mov       eax,[r14+10]
cmp       eax,[rdx+8]
jae       short M00_L13
mov       rdx,[rdx+rax*8+10]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
inc       dword ptr [r14+10]
mov       rcx,[rbp-50]
mov       r13,[rcx+10]
M00_L12
 
mov       [rbp-38],r13
mov       rcx,[rbx+18]
lea       r8,[rbp-38]
mov       rdx,offset MD_BenchmarkDotNet.Engines.Consumer.Consume[[System.String, System.Private.CoreLib]](System.String ByRef)
cmp       [rcx],ecx
call      qword ptr [7FF9F68A7A98]; BenchmarkDotNet.Engines.Consumer.Consume[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef)
mov       rcx,[rbp-50]
jmp       short M00_L11
M00_L13
 
call      CORINFO_HELP_RNGCHKFAIL
M00_L14
 
mov       r11,7FF9F5CA10E8
call      qword ptr [r11]
test      eax,eax
je        short M00_L18
mov       rcx,[rbp-50]
mov       r11,7FF9F5CA10F0
call      qword ptr [r11]
mov       r13,rax
jmp       short M00_L12
M00_L15
 
call      qword ptr [7FF9F604EFE8]
int       3
M00_L16
 
mov       r11d,[r14+14]
cmp       r11d,[r15+14]
jne       short M00_L15
M00_L17
 
mov       r11d,[r15+10]
inc       r11d
mov       [r14+10],r11d
xor       r11d,r11d
mov       [r14+8],r11
M00_L18
 
cmp       rsi,rdi
jne       near ptr M00_L26
M00_L19
 
add       rsp,50
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M00_L20
 
call      qword ptr [7FF9F6365368]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L21
call      qword ptr [7FF9F63650B0]
mov       rbx,rax
M00_L21
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       r13,rax
mov       rcx,r13
mov       rdx,2847FA18468
mov       r8,rbx
call      qword ptr [7FF9F6076670]
mov       rcx,r13
call      CORINFO_HELP_THROW
M00_L22
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DE73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L05
M00_L23
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DE73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L09
M00_L24
 
call      qword ptr [7FF9F63652C0]
mov       ecx,43
mov       rdx,7FF9F62E3C60
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1446
mov       rdx,7FF9F6175A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DE6B08]; System.String.Concat(System.String, System.String)
mov       rdi,rax
mov       ecx,1
mov       rdx,7FF9F62E3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F5DE6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63650B0]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FF9F6076670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L25
 
mov       rcx,7FF9F5D25120
mov       edx,20
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,243F1C02008
mov       rcx,[rcx]
jmp       near ptr M00_L10
M00_L26
 
mov       rcx,[rbp-50]
mov       r11,7FF9F5CA10F8
call      qword ptr [r11]
jmp       near ptr M00_L19
M00_L27
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
push      rbp
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbx
sub       rsp,30
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-50],0
je        short M00_L28
mov       rcx,[rbp-50]
mov       rsi,[rcx]
mov       rdi,offset MT_System.Collections.Generic.List`1+Enumerator[[System.String, System.Private.CoreLib]]
cmp       rsi,rdi
je        short M00_L28
mov       r11,7FF9F5CA10F8
call      qword ptr [r11]
M00_L28
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
sub       rsp,28
movzx     ecx,cx
call      qword ptr [7FFA534A7370]; Precode of System.Globalization.CharUnicodeInfo.GetCategoryCasingTableOffsetNoBoundsChecks(UInt32)
mov       rcx,[7FFA534C0750]
cmp       byte ptr [rcx+rax],0
setl      al
movzx     eax,al
add       rsp,28
ret
 
System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,98
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
vmovdqa   xmmword ptr [rbp+20],xmm4
vmovdqa   xmmword ptr [rbp+30],xmm4
vmovdqa   xmmword ptr [rbp+40],xmm4
vmovdqa   xmmword ptr [rbp+50],xmm4
mov       [rbp+60],rax
mov       rax,8017D821F32A
mov       [rbp],rax
mov       rbx,rcx
mov       esi,r8d
mov       edi,r9d
test      esi,esi
jl        near ptr M02_L12
test      edi,0FFFFFFFC
jne       near ptr M02_L13
cmp       esi,1
jle       short M02_L01
mov       r14d,[rbx+8]
test      r14d,r14d
je        short M02_L01
cmp       dword ptr [rdx+8],0
je        near ptr M02_L14
M02_L00
 
test      [rsp],esp
sub       rsp,200
lea       rcx,[rsp+30]
mov       [rbp+58],rcx
mov       dword ptr [rbp+60],80
xor       ecx,ecx
mov       [rbp+48],rcx
mov       [rbp+50],ecx
lea       rcx,[rbx+0C]
mov       [rbp+38],rcx
mov       [rbp+40],r14d
vmovdqu   xmm0,xmmword ptr [rdx]
vmovdqu   xmmword ptr [rbp+28],xmm0
lea       rcx,[rbp+38]
lea       rdx,[rbp+28]
lea       r8,[rbp+48]
call      qword ptr [7FF9F5DE71B0]; System.String.MakeSeparatorListAny(System.ReadOnlySpan`1, System.ReadOnlySpan`1, System.Collections.Generic.ValueListBuilder`1 ByRef)
mov       eax,[rbp+50]
cmp       eax,[rbp+60]
ja        near ptr M02_L06
mov       r8,[rbp+58]
test      eax,eax
jne       short M02_L07
mov       esi,1
M02_L01
 
test      esi,esi
je        near ptr M02_L16
mov       r14,rbx
test      dil,2
jne       near ptr M02_L15
M02_L02
 
test      dil,1
je        short M02_L03
cmp       dword ptr [r14+8],0
je        near ptr M02_L16
M02_L03
 
mov       rcx,offset MT_System.String[]
mov       edx,1
call      CORINFO_HELP_NEWARR_1_OBJ
mov       r15,rax
lea       rcx,[r15+10]
mov       rdx,r14
call      CORINFO_HELP_ASSIGN_REF
mov       rax,r15
M02_L04
 
mov       rcx,8017D821F32A
cmp       [rbp],rcx
je        short M02_L05
call      CORINFO_HELP_FAIL_FAST
M02_L05
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M02_L06
 
call      qword ptr [7FF9F604E9D0]
int       3
M02_L07
 
test      edi,edi
jne       short M02_L08
xor       edi,edi
mov       [rbp+18],r8
mov       [rbp+20],eax
mov       [rbp+8],rdi
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],esi
mov       rcx,rbx
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DE7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       r14,rax
jmp       short M02_L09
M02_L08
 
xor       ecx,ecx
mov       [rbp+18],r8
mov       [rbp+20],eax
mov       [rbp+8],rcx
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],esi
mov       [rsp+28],edi
mov       rcx,rbx
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DE7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       r14,rax
M02_L09
 
mov       rdx,[rbp+48]
test      rdx,rdx
je        short M02_L10
xor       ecx,ecx
mov       [rbp+48],rcx
mov       rcx,243F1C01F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65E4C18]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M02_L10
 
mov       rax,r14
mov       rcx,8017D821F32A
cmp       [rbp],rcx
je        short M02_L11
call      CORINFO_HELP_FAIL_FAST
M02_L11
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M02_L12
 
mov       ecx,1C7
mov       rdx,7FF9F5C94000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,esi
call      qword ptr [7FF9F68AE520]
int       3
M02_L13
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F604ECB8]
int       3
M02_L14
 
mov       ecx,edi
and       ecx,0FFFFFFFD
cmp       r14d,esi
cmovl     edi,ecx
jmp       near ptr M02_L00
M02_L15
 
mov       rcx,rbx
cmp       [rcx],ecx
call      qword ptr [7FF9F5DE7318]; System.String.Trim()
mov       r14,rax
jmp       near ptr M02_L02
M02_L16
 
mov       rcx,7FF9F5D25120
mov       edx,79
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rax,243F1C02000
mov       rax,[rax]
jmp       near ptr M02_L04
 
System.Collections.Generic.List`1[[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1)
push      rbp
push      rdi
push      rsi
push      rbx
sub       rsp,38
lea       rbp,[rsp+50]
mov       [rbp-30],rsp
mov       [rbp-20],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
test      rbx,rbx
je        near ptr M03_L19
mov       rsi,[rcx]
mov       rdx,rsi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       rax,[rax+68]
test      rax,rax
je        short M03_L00
jmp       short M03_L01
M03_L00
 
mov       rcx,rdx
mov       rdx,7FF9F6A1F4C0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
M03_L01
 
mov       rcx,rax
mov       rdx,rbx
call      qword ptr [7FF9F5DE4348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       rdi,rax
test      rdi,rdi
je        near ptr M03_L09
mov       rcx,[rsi+30]
mov       rcx,[rcx]
mov       r11,[rcx+80]
test      r11,r11
je        short M03_L02
jmp       short M03_L03
M03_L02
 
mov       rcx,rsi
mov       rdx,7FF9F6A1F500
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M03_L03
 
mov       rcx,rdi
call      qword ptr [r11]
mov       ebx,eax
test      ebx,ebx
jle       near ptr M03_L17
mov       rcx,[rbp+10]
mov       rdx,[rcx+8]
mov       eax,[rdx+8]
mov       r8d,[rcx+10]
sub       eax,r8d
cmp       eax,ebx
jge       short M03_L05
add       r8d,ebx
jo        near ptr M03_L18
cmp       dword ptr [rdx+8],0
jne       short M03_L06
mov       edx,4
M03_L04
 
mov       eax,7FFFFFC7
cmp       edx,7FFFFFC7
cmova     edx,eax
cmp       edx,r8d
cmovl     edx,r8d
call      qword ptr [7FF9F5E9DFF8]; System.Collections.Generic.List`1[[System.__Canon, System.Private.CoreLib]].set_Capacity(Int32)
mov       rcx,[rbp+10]
M03_L05
 
mov       rdx,[rsi+30]
mov       rdx,[rdx]
mov       r11,[rdx+88]
test      r11,r11
je        short M03_L07
jmp       short M03_L08
M03_L06
 
mov       edx,[rdx+8]
add       edx,edx
jmp       short M03_L04
M03_L07
 
mov       rcx,rsi
mov       rdx,7FF9F6A1F518
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
mov       rcx,[rbp+10]
M03_L08
 
mov       rdx,[rcx+8]
mov       r8d,[rcx+10]
mov       rcx,rdi
call      qword ptr [r11]
mov       rcx,[rbp+10]
add       [rcx+10],ebx
inc       dword ptr [rcx+14]
add       rsp,38
pop       rbx
pop       rsi
pop       rdi
pop       rbp
ret
M03_L09
 
mov       rcx,[rsi+30]
mov       rcx,[rcx]
mov       r11,[rcx+70]
test      r11,r11
je        short M03_L10
jmp       short M03_L11
M03_L10
 
mov       rcx,rsi
mov       rdx,7FF9F6A1F4D0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M03_L11
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-28],rax
jmp       short M03_L16
M03_L12
 
mov       rcx,[rsi+30]
mov       rcx,[rcx]
mov       r11,[rcx+78]
test      r11,r11
je        short M03_L13
jmp       short M03_L14
M03_L13
 
mov       rcx,rsi
mov       rdx,7FF9F6A1F4E8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M03_L14
 
mov       rcx,[rbp-28]
call      qword ptr [r11]
mov       r8,rax
mov       rcx,[rbp+10]
inc       dword ptr [rcx+14]
mov       rax,[rcx+8]
mov       edx,[rcx+10]
cmp       [rax+8],edx
jbe       short M03_L15
lea       r10d,[rdx+1]
mov       [rcx+10],r10d
movsxd    rdx,edx
mov       rcx,rax
call      CORINFO_HELP_ARRADDR_ST
jmp       short M03_L16
M03_L15
 
mov       rdx,r8
call      qword ptr [7FF9F5E9E130]; System.Collections.Generic.List`1[[System.__Canon, System.Private.CoreLib]].AddWithResize(System.__Canon)
M03_L16
 
mov       rcx,[rbp-28]
mov       r11,7FF9F5CA1110
call      qword ptr [r11]
test      eax,eax
jne       short M03_L12
mov       rcx,rsp
call      M03_L20
nop
M03_L17
 
add       rsp,38
pop       rbx
pop       rsi
pop       rdi
pop       rbp
ret
M03_L18
 
call      CORINFO_HELP_OVERFLOW
M03_L19
 
mov       ecx,17
call      qword ptr [7FF9F604ED00]
int       3
M03_L20
 
push      rbp
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+50]
cmp       qword ptr [rbp-28],0
je        short M03_L21
mov       rcx,[rbp-28]
mov       r11,7FF9F5CA1118
call      qword ptr [r11]
M03_L21
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       rbp
ret
 
BenchmarkDotNet.Engines.Consumer.Consume[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef)
push      rbx
mov       rbx,rcx
mov       rdx,[r8]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
pop       rbx
ret
 
System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,edx
mov       edi,[rbx+8]
lea       ebp,[rdi-1]
mov       r14d,ebp
xor       r15d,r15d
test      sil,1
je        short M05_L03
xor       r15d,r15d
test      edi,edi
jle       short M05_L03
M05_L00
 
mov       ecx,r15d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M05_L01
mov       rax,[7FFA534C0728]
test      byte ptr [rax+rcx],80
je        short M05_L03
jmp       short M05_L02
M05_L01
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M05_L03
M05_L02
 
inc       r15d
cmp       edi,r15d
jg        short M05_L00
M05_L03
 
test      sil,2
je        near ptr M05_L10
mov       r14d,ebp
cmp       r14d,r15d
jl        short M05_L10
mov       ecx,r14d
or        ecx,r15d
jl        short M05_L07
cmp       edi,r14d
jle       short M05_L07
M05_L04
 
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M05_L05
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M05_L10
jmp       short M05_L06
M05_L05
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M05_L10
M05_L06
 
dec       r14d
cmp       r14d,r15d
jge       short M05_L04
jmp       short M05_L10
M05_L07
 
cmp       r14d,edi
jae       short M05_L14
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M05_L08
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M05_L10
jmp       short M05_L09
M05_L08
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M05_L10
M05_L09
 
dec       r14d
cmp       r14d,r15d
jge       short M05_L07
M05_L10
 
mov       r8d,r14d
sub       r8d,r15d
inc       r8d
cmp       edi,r8d
jne       short M05_L12
mov       rax,rbx
M05_L11
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M05_L12
 
test      r8d,r8d
je        short M05_L13
mov       rcx,rbx
mov       edx,r15d
call      qword ptr [7FFA534A34A0]; Precode of System.String.InternalSubString(Int32, Int32)
jmp       short M05_L11
M05_L13
 
mov       rax,[7FFA534C08A0]
mov       rax,[rax]
jmp       short M05_L11
M05_L14
 
call      qword ptr [7FFA53493D20]; CORINFO_HELP_RNGCHKFAIL
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M06_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M06_L02
test      rbx,rbx
je        short M06_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M06_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M06_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FF9F5E95B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FF9F5E95B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M06_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M06_L01
 
call      qword ptr [7FF9F604EF40]
int       3
M06_L02
 
test      rbx,rbx
je        short M06_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M06_L04
M06_L03
 
mov       rax,2847FA10008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M06_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.SplitRemoveEmpty()
push      rbp
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbx
sub       rsp,50
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqu   xmmword ptr [rbp-48],xmm4
xor       eax,eax
mov       [rbp-38],rax
mov       [rbp-60],rsp
mov       rbx,rcx
mov       rsi,[rbx+298]
test      rsi,rsi
je        short M00_L00
xor       ecx,ecx
cmp       dword ptr [rsi+8],0
sete      cl
test      ecx,ecx
sete      cl
movzx     ecx,cl
cmp       dword ptr [rsi+8],0
jne       short M00_L01
jmp       short M00_L01
M00_L00
 
xor       ecx,ecx
M00_L01
 
test      ecx,ecx
je        near ptr M00_L21
cmp       dword ptr [rsi+8],0
je        short M00_L05
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       short M00_L02
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L23
jmp       short M00_L03
M00_L02
 
call      qword ptr [7FF9F670E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L23
M00_L03
 
mov       ecx,[rsi+8]
dec       ecx
cmp       ecx,[rsi+8]
jae       near ptr M00_L28
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L04
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L23
jmp       short M00_L05
M00_L04
 
call      qword ptr [7FF9F670E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L23
M00_L05
 
mov       edi,[rsi+8]
test      edi,edi
je        short M00_L09
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       short M00_L06
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L24
jmp       short M00_L07
M00_L06
 
call      qword ptr [7FF9F670E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L24
M00_L07
 
dec       edi
mov       ecx,edi
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L08
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L24
jmp       short M00_L09
M00_L08
 
call      qword ptr [7FF9F670E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L24
M00_L09
 
mov       rcx,offset MT_System.Char[]
mov       edx,1
call      CORINFO_HELP_NEWARR_1_VC
mov       word ptr [rax+10],2C
cmp       [rsi],sil
add       rax,10
mov       rcx,rsi
mov       [rbp-48],rax
mov       dword ptr [rbp-40],1
lea       rdx,[rbp-48]
mov       r8d,7FFFFFFF
mov       r9d,1
call      qword ptr [7FF9F5DB70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
mov       rsi,rax
mov       rcx,offset MT_System.Collections.Generic.List`1[[System.String, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       rcx,2A3CAC01D90
mov       rdx,[rcx]
lea       rcx,[rdi+8]
call      CORINFO_HELP_ASSIGN_REF
mov       rdx,rsi
test      rdx,rdx
je        near ptr M00_L25
mov       rcx,rdi
call      qword ptr [7FF9F5E6E160]; System.Collections.Generic.List`1[[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1)
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyCollection`1[[System.String, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
lea       rcx,[rsi+8]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rsi+8]
mov       r11,7FF9F5C71100
call      qword ptr [r11]
test      eax,eax
je        near ptr M00_L26
mov       rcx,[rsi+8]
mov       r11,7FF9F5C71108
call      qword ptr [r11]
mov       rcx,rax
M00_L10
 
mov       [rbp-50],rcx
mov       rsi,[rcx]
mov       rdi,offset MT_System.Collections.Generic.List`1+Enumerator[[System.String, System.Private.CoreLib]]
M00_L11
 
cmp       rsi,rdi
jne       short M00_L14
lea       r14,[rcx+8]
mov       r15,[r14]
mov       rdx,r15
mov       eax,[r14+14]
cmp       eax,[rdx+14]
jne       short M00_L15
mov       eax,[r14+10]
cmp       eax,[rdx+10]
jae       short M00_L16
lea       rcx,[r14+8]
mov       rdx,[rdx+8]
mov       eax,[r14+10]
cmp       eax,[rdx+8]
jae       short M00_L13
mov       rdx,[rdx+rax*8+10]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
inc       dword ptr [r14+10]
mov       rcx,[rbp-50]
mov       r13,[rcx+10]
M00_L12
 
mov       [rbp-38],r13
mov       rcx,[rbx+18]
lea       r8,[rbp-38]
mov       rdx,offset MD_BenchmarkDotNet.Engines.Consumer.Consume[[System.String, System.Private.CoreLib]](System.String ByRef)
cmp       [rcx],ecx
call      qword ptr [7FF9F687D920]; BenchmarkDotNet.Engines.Consumer.Consume[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef)
mov       rcx,[rbp-50]
jmp       short M00_L11
M00_L13
 
call      CORINFO_HELP_RNGCHKFAIL
M00_L14
 
mov       r11,7FF9F5C710E8
call      qword ptr [r11]
test      eax,eax
jne       short M00_L18
jmp       short M00_L19
M00_L15
 
mov       r11d,[r14+14]
cmp       r11d,[r15+14]
jne       short M00_L17
M00_L16
 
mov       r11d,[r15+10]
inc       r11d
mov       [r14+10],r11d
xor       r11d,r11d
mov       [r14+8],r11
jmp       short M00_L19
M00_L17
 
call      qword ptr [7FF9F601EFE8]
int       3
M00_L18
 
mov       rcx,[rbp-50]
mov       r11,7FF9F5C710F0
call      qword ptr [r11]
mov       r13,rax
jmp       short M00_L12
M00_L19
 
cmp       rsi,rdi
jne       near ptr M00_L27
M00_L20
 
add       rsp,50
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M00_L21
 
call      qword ptr [7FF9F6335368]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L22
call      qword ptr [7FF9F63350B0]
mov       rbx,rax
M00_L22
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       r13,rax
mov       rcx,r13
mov       rdx,2E458A78468
mov       r8,rbx
call      qword ptr [7FF9F6046670]
mov       rcx,r13
call      CORINFO_HELP_THROW
M00_L23
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DB73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L05
M00_L24
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DB73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L09
M00_L25
 
call      qword ptr [7FF9F63352C0]
mov       ecx,43
mov       rdx,7FF9F62B3C60
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1446
mov       rdx,7FF9F6145A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DB6B08]; System.String.Concat(System.String, System.String)
mov       rdi,rax
mov       ecx,1
mov       rdx,7FF9F62B3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F5DB6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63350B0]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FF9F6046670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L26
 
mov       rcx,7FF9F5CF5120
mov       edx,20
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,2A3CAC02008
mov       rcx,[rcx]
jmp       near ptr M00_L10
M00_L27
 
mov       rcx,[rbp-50]
mov       r11,7FF9F5C710F8
call      qword ptr [r11]
jmp       near ptr M00_L20
M00_L28
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
push      rbp
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbx
sub       rsp,30
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-50],0
je        short M00_L29
mov       rcx,[rbp-50]
mov       rsi,[rcx]
mov       rdi,offset MT_System.Collections.Generic.List`1+Enumerator[[System.String, System.Private.CoreLib]]
cmp       rsi,rdi
je        short M00_L29
mov       r11,7FF9F5C710F8
call      qword ptr [r11]
M00_L29
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
sub       rsp,28
movzx     ecx,cx
call      qword ptr [7FFA534A7370]; Precode of System.Globalization.CharUnicodeInfo.GetCategoryCasingTableOffsetNoBoundsChecks(UInt32)
mov       rcx,[7FFA534C0750]
cmp       byte ptr [rcx+rax],0
setl      al
movzx     eax,al
add       rsp,28
ret
 
System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,98
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
vmovdqa   xmmword ptr [rbp+20],xmm4
vmovdqa   xmmword ptr [rbp+30],xmm4
vmovdqa   xmmword ptr [rbp+40],xmm4
vmovdqa   xmmword ptr [rbp+50],xmm4
mov       [rbp+60],rax
mov       rax,4FDCA6E1A4C
mov       [rbp],rax
mov       rbx,rcx
mov       esi,r8d
mov       edi,r9d
test      esi,esi
jl        near ptr M02_L12
test      edi,0FFFFFFFC
jne       near ptr M02_L13
cmp       esi,1
jle       short M02_L01
mov       r14d,[rbx+8]
test      r14d,r14d
je        short M02_L01
cmp       dword ptr [rdx+8],0
je        near ptr M02_L14
M02_L00
 
test      [rsp],esp
sub       rsp,200
lea       rcx,[rsp+30]
mov       [rbp+58],rcx
mov       dword ptr [rbp+60],80
xor       ecx,ecx
mov       [rbp+48],rcx
mov       [rbp+50],ecx
lea       rcx,[rbx+0C]
mov       [rbp+38],rcx
mov       [rbp+40],r14d
vmovdqu   xmm0,xmmword ptr [rdx]
vmovdqu   xmmword ptr [rbp+28],xmm0
lea       rcx,[rbp+38]
lea       rdx,[rbp+28]
lea       r8,[rbp+48]
call      qword ptr [7FF9F5DB71B0]; System.String.MakeSeparatorListAny(System.ReadOnlySpan`1, System.ReadOnlySpan`1, System.Collections.Generic.ValueListBuilder`1 ByRef)
mov       eax,[rbp+50]
cmp       eax,[rbp+60]
ja        near ptr M02_L06
mov       r8,[rbp+58]
test      eax,eax
jne       short M02_L07
mov       esi,1
M02_L01
 
test      esi,esi
je        near ptr M02_L16
mov       r14,rbx
test      dil,2
jne       near ptr M02_L15
M02_L02
 
test      dil,1
je        short M02_L03
cmp       dword ptr [r14+8],0
je        near ptr M02_L16
M02_L03
 
mov       rcx,offset MT_System.String[]
mov       edx,1
call      CORINFO_HELP_NEWARR_1_OBJ
mov       r15,rax
lea       rcx,[r15+10]
mov       rdx,r14
call      CORINFO_HELP_ASSIGN_REF
mov       rax,r15
M02_L04
 
mov       rcx,4FDCA6E1A4C
cmp       [rbp],rcx
je        short M02_L05
call      CORINFO_HELP_FAIL_FAST
M02_L05
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M02_L06
 
call      qword ptr [7FF9F601E9D0]
int       3
M02_L07
 
test      edi,edi
jne       short M02_L08
xor       edi,edi
mov       [rbp+18],r8
mov       [rbp+20],eax
mov       [rbp+8],rdi
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],esi
mov       rcx,rbx
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DB7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       r14,rax
jmp       short M02_L09
M02_L08
 
xor       ecx,ecx
mov       [rbp+18],r8
mov       [rbp+20],eax
mov       [rbp+8],rcx
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],esi
mov       [rsp+28],edi
mov       rcx,rbx
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DB7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       r14,rax
M02_L09
 
mov       rdx,[rbp+48]
test      rdx,rdx
je        short M02_L10
xor       ecx,ecx
mov       [rbp+48],rcx
mov       rcx,2A3CAC01F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65B5250]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M02_L10
 
mov       rax,r14
mov       rcx,4FDCA6E1A4C
cmp       [rbp],rcx
je        short M02_L11
call      CORINFO_HELP_FAIL_FAST
M02_L11
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M02_L12
 
mov       ecx,1C7
mov       rdx,7FF9F5C64000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,esi
call      qword ptr [7FF9F687FF90]
int       3
M02_L13
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F601ECB8]
int       3
M02_L14
 
mov       ecx,edi
and       ecx,0FFFFFFFD
cmp       r14d,esi
cmovl     edi,ecx
jmp       near ptr M02_L00
M02_L15
 
mov       rcx,rbx
cmp       [rcx],ecx
call      qword ptr [7FF9F5DB7318]; System.String.Trim()
mov       r14,rax
jmp       near ptr M02_L02
M02_L16
 
mov       rcx,7FF9F5CF5120
mov       edx,79
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rax,2A3CAC02000
mov       rax,[rax]
jmp       near ptr M02_L04
 
System.Collections.Generic.List`1[[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1)
push      rbp
push      rdi
push      rsi
push      rbx
sub       rsp,38
lea       rbp,[rsp+50]
mov       [rbp-30],rsp
mov       [rbp-20],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
test      rbx,rbx
je        near ptr M03_L19
mov       rsi,[rcx]
mov       rdx,rsi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       rax,[rax+68]
test      rax,rax
je        short M03_L00
jmp       short M03_L01
M03_L00
 
mov       rcx,rdx
mov       rdx,7FF9F6A20018
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
M03_L01
 
mov       rcx,rax
mov       rdx,rbx
call      qword ptr [7FF9F5DB4348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       rdi,rax
test      rdi,rdi
je        near ptr M03_L09
mov       rcx,[rsi+30]
mov       rcx,[rcx]
mov       r11,[rcx+80]
test      r11,r11
je        short M03_L02
jmp       short M03_L03
M03_L02
 
mov       rcx,rsi
mov       rdx,7FF9F6A20058
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M03_L03
 
mov       rcx,rdi
call      qword ptr [r11]
mov       ebx,eax
test      ebx,ebx
jle       near ptr M03_L17
mov       rcx,[rbp+10]
mov       rdx,[rcx+8]
mov       eax,[rdx+8]
mov       r8d,[rcx+10]
sub       eax,r8d
cmp       eax,ebx
jge       short M03_L05
add       r8d,ebx
jo        near ptr M03_L18
cmp       dword ptr [rdx+8],0
jne       short M03_L06
mov       edx,4
M03_L04
 
mov       eax,7FFFFFC7
cmp       edx,7FFFFFC7
cmova     edx,eax
cmp       edx,r8d
cmovl     edx,r8d
call      qword ptr [7FF9F5E6DFF8]; System.Collections.Generic.List`1[[System.__Canon, System.Private.CoreLib]].set_Capacity(Int32)
mov       rcx,[rbp+10]
M03_L05
 
mov       rdx,[rsi+30]
mov       rdx,[rdx]
mov       r11,[rdx+88]
test      r11,r11
je        short M03_L07
jmp       short M03_L08
M03_L06
 
mov       edx,[rdx+8]
add       edx,edx
jmp       short M03_L04
M03_L07
 
mov       rcx,rsi
mov       rdx,7FF9F6A20070
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
mov       rcx,[rbp+10]
M03_L08
 
mov       rdx,[rcx+8]
mov       r8d,[rcx+10]
mov       rcx,rdi
call      qword ptr [r11]
mov       rcx,[rbp+10]
add       [rcx+10],ebx
inc       dword ptr [rcx+14]
add       rsp,38
pop       rbx
pop       rsi
pop       rdi
pop       rbp
ret
M03_L09
 
mov       rcx,[rsi+30]
mov       rcx,[rcx]
mov       r11,[rcx+70]
test      r11,r11
je        short M03_L10
jmp       short M03_L11
M03_L10
 
mov       rcx,rsi
mov       rdx,7FF9F6A20028
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M03_L11
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-28],rax
jmp       short M03_L16
M03_L12
 
mov       rcx,[rsi+30]
mov       rcx,[rcx]
mov       r11,[rcx+78]
test      r11,r11
je        short M03_L13
jmp       short M03_L14
M03_L13
 
mov       rcx,rsi
mov       rdx,7FF9F6A20040
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M03_L14
 
mov       rcx,[rbp-28]
call      qword ptr [r11]
mov       r8,rax
mov       rcx,[rbp+10]
inc       dword ptr [rcx+14]
mov       rax,[rcx+8]
mov       edx,[rcx+10]
cmp       [rax+8],edx
jbe       short M03_L15
lea       r10d,[rdx+1]
mov       [rcx+10],r10d
movsxd    rdx,edx
mov       rcx,rax
call      CORINFO_HELP_ARRADDR_ST
jmp       short M03_L16
M03_L15
 
mov       rdx,r8
call      qword ptr [7FF9F5E6E130]; System.Collections.Generic.List`1[[System.__Canon, System.Private.CoreLib]].AddWithResize(System.__Canon)
M03_L16
 
mov       rcx,[rbp-28]
mov       r11,7FF9F5C71110
call      qword ptr [r11]
test      eax,eax
jne       short M03_L12
mov       rcx,rsp
call      M03_L20
nop
M03_L17
 
add       rsp,38
pop       rbx
pop       rsi
pop       rdi
pop       rbp
ret
M03_L18
 
call      CORINFO_HELP_OVERFLOW
M03_L19
 
mov       ecx,17
call      qword ptr [7FF9F601ED00]
int       3
M03_L20
 
push      rbp
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+50]
cmp       qword ptr [rbp-28],0
je        short M03_L21
mov       rcx,[rbp-28]
mov       r11,7FF9F5C71118
call      qword ptr [r11]
M03_L21
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       rbp
ret
 
BenchmarkDotNet.Engines.Consumer.Consume[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef)
push      rbx
mov       rbx,rcx
mov       rdx,[r8]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
pop       rbx
ret
 
System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,edx
mov       edi,[rbx+8]
lea       ebp,[rdi-1]
mov       r14d,ebp
xor       r15d,r15d
test      sil,1
je        short M05_L03
xor       r15d,r15d
test      edi,edi
jle       short M05_L03
M05_L00
 
mov       ecx,r15d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M05_L01
mov       rax,[7FFA534C0728]
test      byte ptr [rax+rcx],80
je        short M05_L03
jmp       short M05_L02
M05_L01
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M05_L03
M05_L02
 
inc       r15d
cmp       edi,r15d
jg        short M05_L00
M05_L03
 
test      sil,2
je        near ptr M05_L10
mov       r14d,ebp
cmp       r14d,r15d
jl        short M05_L10
mov       ecx,r14d
or        ecx,r15d
jl        short M05_L07
cmp       edi,r14d
jle       short M05_L07
M05_L04
 
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M05_L05
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M05_L10
jmp       short M05_L06
M05_L05
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M05_L10
M05_L06
 
dec       r14d
cmp       r14d,r15d
jge       short M05_L04
jmp       short M05_L10
M05_L07
 
cmp       r14d,edi
jae       short M05_L14
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M05_L08
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M05_L10
jmp       short M05_L09
M05_L08
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M05_L10
M05_L09
 
dec       r14d
cmp       r14d,r15d
jge       short M05_L07
M05_L10
 
mov       r8d,r14d
sub       r8d,r15d
inc       r8d
cmp       edi,r8d
jne       short M05_L12
mov       rax,rbx
M05_L11
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M05_L12
 
test      r8d,r8d
je        short M05_L13
mov       rcx,rbx
mov       edx,r15d
call      qword ptr [7FFA534A34A0]; Precode of System.String.InternalSubString(Int32, Int32)
jmp       short M05_L11
M05_L13
 
mov       rax,[7FFA534C08A0]
mov       rax,[rax]
jmp       short M05_L11
M05_L14
 
call      qword ptr [7FFA53493D20]; CORINFO_HELP_RNGCHKFAIL
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M06_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M06_L02
test      rbx,rbx
je        short M06_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M06_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M06_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FF9F5E65B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FF9F5E65B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M06_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M06_L01
 
call      qword ptr [7FF9F601EF40]
int       3
M06_L02
 
test      rbx,rbx
je        short M06_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M06_L04
M06_L03
 
mov       rax,2E458A70008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M06_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.SplitRemoveEmpty()
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,48
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
xor       eax,eax
mov       [rbp-40],rax
mov       [rbp-60],rsp
mov       rbx,rcx
mov       rsi,[rbx+298]
test      rsi,rsi
je        short M00_L00
xor       ecx,ecx
cmp       dword ptr [rsi+8],0
sete      cl
test      ecx,ecx
sete      cl
movzx     ecx,cl
cmp       dword ptr [rsi+8],0
jne       short M00_L01
jmp       short M00_L01
M00_L00
 
xor       ecx,ecx
M00_L01
 
test      ecx,ecx
je        near ptr M00_L28
cmp       dword ptr [rsi+8],0
je        short M00_L05
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       short M00_L02
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L30
jmp       short M00_L03
M00_L02
 
call      qword ptr [7FF9F672E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L30
M00_L03
 
mov       ecx,[rsi+8]
dec       ecx
cmp       ecx,[rsi+8]
jae       near ptr M00_L35
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L04
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L30
jmp       short M00_L05
M00_L04
 
call      qword ptr [7FF9F672E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L30
M00_L05
 
mov       edi,[rsi+8]
test      edi,edi
je        short M00_L09
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       short M00_L06
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L31
jmp       short M00_L07
M00_L06
 
call      qword ptr [7FF9F672E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L31
M00_L07
 
dec       edi
mov       ecx,edi
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L08
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L31
jmp       short M00_L09
M00_L08
 
call      qword ptr [7FF9F672E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L31
M00_L09
 
mov       rcx,offset MT_System.Char[]
mov       edx,1
call      CORINFO_HELP_NEWARR_1_VC
mov       word ptr [rax+10],2C
cmp       [rsi],sil
add       rax,10
mov       rcx,rsi
mov       [rbp-50],rax
mov       dword ptr [rbp-48],1
lea       rdx,[rbp-50]
mov       r8d,7FFFFFFF
mov       r9d,1
call      qword ptr [7FF9F5DD70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
mov       rsi,rax
mov       rcx,offset MT_System.Collections.Generic.List`1[[System.String, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       rcx,19B0A001D90
mov       rdx,[rcx]
lea       rcx,[rdi+8]
call      CORINFO_HELP_ASSIGN_REF
mov       rdx,rsi
test      rdx,rdx
je        near ptr M00_L32
mov       rcx,rdi
call      qword ptr [7FF9F5E8E160]; System.Collections.Generic.List`1[[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1)
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyCollection`1[[System.String, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
lea       rcx,[rsi+8]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rsi+8]
mov       r11,7FF9F5C91100
call      qword ptr [r11]
test      eax,eax
je        near ptr M00_L33
mov       rcx,[rsi+8]
mov       r11,7FF9F5C91108
call      qword ptr [r11]
mov       rcx,rax
M00_L10
 
mov       [rbp-58],rcx
test      rcx,rcx
je        near ptr M00_L20
mov       rsi,[rcx]
mov       rdi,offset MT_System.Collections.Generic.List`1+Enumerator[[System.String, System.Private.CoreLib]]
cmp       rsi,rdi
jne       near ptr M00_L20
jmp       short M00_L13
M00_L11
 
mov       rcx,[rbp-58]
mov       rax,[rcx+10]
M00_L12
 
mov       [rbp-40],rax
mov       rcx,[rbx+18]
lea       r8,[rbp-40]
mov       rdx,offset MD_BenchmarkDotNet.Engines.Consumer.Consume[[System.String, System.Private.CoreLib]](System.String ByRef)
cmp       [rcx],ecx
call      qword ptr [7FF9F689D920]; BenchmarkDotNet.Engines.Consumer.Consume[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef)
mov       rcx,[rbp-58]
M00_L13
 
cmp       rsi,rdi
jne       short M00_L15
lea       r14,[rcx+8]
mov       r15,[r14]
mov       rax,r15
mov       edx,[r14+14]
cmp       edx,[rax+14]
jne       short M00_L16
mov       edx,[r14+10]
cmp       edx,[rax+10]
jae       short M00_L17
lea       rcx,[r14+8]
mov       r13,[rax+8]
mov       r12d,[r14+10]
cmp       r12d,[r13+8]
jae       short M00_L14
mov       edx,r12d
mov       rdx,[r13+rdx*8+10]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
inc       dword ptr [r14+10]
jmp       short M00_L11
M00_L14
 
call      CORINFO_HELP_RNGCHKFAIL
M00_L15
 
mov       r11,7FF9F5C910E8
call      qword ptr [r11]
test      eax,eax
jne       near ptr M00_L23
jmp       near ptr M00_L26
M00_L16
 
mov       r11d,[r14+14]
cmp       r11d,[r15+14]
jne       near ptr M00_L22
M00_L17
 
mov       r11d,[r15+10]
inc       r11d
mov       [r14+10],r11d
xor       r11d,r11d
mov       [r14+8],r11
jmp       near ptr M00_L26
M00_L18
 
mov       rcx,[rbp-58]
mov       rax,[rcx+10]
M00_L19
 
mov       [rbp-40],rax
mov       rcx,[rbx+18]
lea       r8,[rbp-40]
mov       rdx,offset MD_BenchmarkDotNet.Engines.Consumer.Consume[[System.String, System.Private.CoreLib]](System.String ByRef)
cmp       [rcx],ecx
call      qword ptr [7FF9F689D920]; BenchmarkDotNet.Engines.Consumer.Consume[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef)
mov       rcx,[rbp-58]
M00_L20
 
mov       rsi,[rcx]
mov       rdi,offset MT_System.Collections.Generic.List`1+Enumerator[[System.String, System.Private.CoreLib]]
cmp       rsi,rdi
jne       short M00_L21
lea       r14,[rcx+8]
mov       rax,[r14]
mov       r15d,[r14+14]
cmp       r15d,[rax+14]
jne       short M00_L24
mov       r12d,[r14+10]
cmp       r12d,[rax+10]
jae       short M00_L25
lea       rcx,[r14+8]
mov       r13,[rax+8]
cmp       r12d,[r13+8]
jae       near ptr M00_L14
mov       edx,r12d
mov       rdx,[r13+rdx*8+10]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
inc       dword ptr [r14+10]
jmp       short M00_L18
M00_L21
 
mov       r11,7FF9F5C910E8
call      qword ptr [r11]
test      eax,eax
je        short M00_L26
mov       rcx,[rbp-58]
mov       r11,7FF9F5C910F0
call      qword ptr [r11]
jmp       near ptr M00_L19
M00_L22
 
call      qword ptr [7FF9F603EFE8]
int       3
M00_L23
 
mov       rcx,[rbp-58]
mov       r11,7FF9F5C910F0
call      qword ptr [r11]
jmp       near ptr M00_L12
M00_L24
 
mov       r11,[r14]
cmp       r15d,[r11+14]
jne       short M00_L22
M00_L25
 
mov       r11,[r14]
mov       r11d,[r11+10]
inc       r11d
mov       [r14+10],r11d
xor       r11d,r11d
mov       [r14+8],r11
M00_L26
 
cmp       rsi,rdi
jne       near ptr M00_L34
M00_L27
 
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M00_L28
 
call      qword ptr [7FF9F6355368]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L29
call      qword ptr [7FF9F63550B0]
mov       rbx,rax
M00_L29
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,1DB9BEC8468
mov       r8,rbx
call      qword ptr [7FF9F6066670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L30
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DD73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L05
M00_L31
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DD73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L09
M00_L32
 
call      qword ptr [7FF9F63552C0]
mov       ecx,43
mov       rdx,7FF9F62D3C60
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1446
mov       rdx,7FF9F6165A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DD6B08]; System.String.Concat(System.String, System.String)
mov       rdi,rax
mov       ecx,1
mov       rdx,7FF9F62D3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F5DD6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63550B0]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FF9F6066670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L33
 
mov       rcx,7FF9F5D15120
mov       edx,20
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,19B0A002008
mov       rcx,[rcx]
jmp       near ptr M00_L10
M00_L34
 
mov       rcx,[rbp-58]
mov       r11,7FF9F5C910F8
call      qword ptr [r11]
jmp       near ptr M00_L27
M00_L35
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M00_L36
mov       rcx,[rbp-58]
mov       rsi,[rcx]
mov       rdi,offset MT_System.Collections.Generic.List`1+Enumerator[[System.String, System.Private.CoreLib]]
cmp       rsi,rdi
je        short M00_L36
mov       r11,7FF9F5C910F8
call      qword ptr [r11]
M00_L36
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
sub       rsp,28
movzx     ecx,cx
call      qword ptr [7FFA534A7370]; Precode of System.Globalization.CharUnicodeInfo.GetCategoryCasingTableOffsetNoBoundsChecks(UInt32)
mov       rcx,[7FFA534C0750]
cmp       byte ptr [rcx+rax],0
setl      al
movzx     eax,al
add       rsp,28
ret
 
System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,98
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
vmovdqa   xmmword ptr [rbp+20],xmm4
vmovdqa   xmmword ptr [rbp+30],xmm4
vmovdqa   xmmword ptr [rbp+40],xmm4
vmovdqa   xmmword ptr [rbp+50],xmm4
mov       [rbp+60],rax
mov       rax,0D7C17B19F66D
mov       [rbp],rax
mov       rbx,rcx
mov       esi,r8d
mov       edi,r9d
test      esi,esi
jl        near ptr M02_L12
test      edi,0FFFFFFFC
jne       near ptr M02_L13
cmp       esi,1
jle       short M02_L01
mov       r14d,[rbx+8]
test      r14d,r14d
je        short M02_L01
cmp       dword ptr [rdx+8],0
je        near ptr M02_L14
M02_L00
 
test      [rsp],esp
sub       rsp,200
lea       rcx,[rsp+30]
mov       [rbp+58],rcx
mov       dword ptr [rbp+60],80
xor       ecx,ecx
mov       [rbp+48],rcx
mov       [rbp+50],ecx
lea       rcx,[rbx+0C]
mov       [rbp+38],rcx
mov       [rbp+40],r14d
vmovdqu   xmm0,xmmword ptr [rdx]
vmovdqu   xmmword ptr [rbp+28],xmm0
lea       rcx,[rbp+38]
lea       rdx,[rbp+28]
lea       r8,[rbp+48]
call      qword ptr [7FF9F5DD71B0]; System.String.MakeSeparatorListAny(System.ReadOnlySpan`1, System.ReadOnlySpan`1, System.Collections.Generic.ValueListBuilder`1 ByRef)
mov       eax,[rbp+50]
cmp       eax,[rbp+60]
ja        near ptr M02_L06
mov       r8,[rbp+58]
test      eax,eax
jne       short M02_L07
mov       esi,1
M02_L01
 
test      esi,esi
je        near ptr M02_L16
mov       r14,rbx
test      dil,2
jne       near ptr M02_L15
M02_L02
 
test      dil,1
je        short M02_L03
cmp       dword ptr [r14+8],0
je        near ptr M02_L16
M02_L03
 
mov       rcx,offset MT_System.String[]
mov       edx,1
call      CORINFO_HELP_NEWARR_1_OBJ
mov       r15,rax
lea       rcx,[r15+10]
mov       rdx,r14
call      CORINFO_HELP_ASSIGN_REF
mov       rax,r15
M02_L04
 
mov       rcx,0D7C17B19F66D
cmp       [rbp],rcx
je        short M02_L05
call      CORINFO_HELP_FAIL_FAST
M02_L05
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M02_L06
 
call      qword ptr [7FF9F603E9D0]
int       3
M02_L07
 
test      edi,edi
jne       short M02_L08
xor       edi,edi
mov       [rbp+18],r8
mov       [rbp+20],eax
mov       [rbp+8],rdi
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],esi
mov       rcx,rbx
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DD7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       r14,rax
jmp       short M02_L09
M02_L08
 
xor       ecx,ecx
mov       [rbp+18],r8
mov       [rbp+20],eax
mov       [rbp+8],rcx
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],esi
mov       [rsp+28],edi
mov       rcx,rbx
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DD7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       r14,rax
M02_L09
 
mov       rdx,[rbp+48]
test      rdx,rdx
je        short M02_L10
xor       ecx,ecx
mov       [rbp+48],rcx
mov       rcx,19B0A001F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65D5168]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M02_L10
 
mov       rax,r14
mov       rcx,0D7C17B19F66D
cmp       [rbp],rcx
je        short M02_L11
call      CORINFO_HELP_FAIL_FAST
M02_L11
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M02_L12
 
mov       ecx,1C7
mov       rdx,7FF9F5C84000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,esi
call      qword ptr [7FF9F689FF90]
int       3
M02_L13
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F603ECB8]
int       3
M02_L14
 
mov       ecx,edi
and       ecx,0FFFFFFFD
cmp       r14d,esi
cmovl     edi,ecx
jmp       near ptr M02_L00
M02_L15
 
mov       rcx,rbx
cmp       [rcx],ecx
call      qword ptr [7FF9F5DD7318]; System.String.Trim()
mov       r14,rax
jmp       near ptr M02_L02
M02_L16
 
mov       rcx,7FF9F5D15120
mov       edx,79
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rax,19B0A002000
mov       rax,[rax]
jmp       near ptr M02_L04
 
System.Collections.Generic.List`1[[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1)
push      rbp
push      rdi
push      rsi
push      rbx
sub       rsp,38
lea       rbp,[rsp+50]
mov       [rbp-30],rsp
mov       [rbp-20],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
test      rbx,rbx
je        near ptr M03_L19
mov       rsi,[rcx]
mov       rdx,rsi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       rax,[rax+68]
test      rax,rax
je        short M03_L00
jmp       short M03_L01
M03_L00
 
mov       rcx,rdx
mov       rdx,7FF9F6A40940
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
M03_L01
 
mov       rcx,rax
mov       rdx,rbx
call      qword ptr [7FF9F5DD4348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       rdi,rax
test      rdi,rdi
je        near ptr M03_L09
mov       rcx,[rsi+30]
mov       rcx,[rcx]
mov       r11,[rcx+80]
test      r11,r11
je        short M03_L02
jmp       short M03_L03
M03_L02
 
mov       rcx,rsi
mov       rdx,7FF9F6A40980
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M03_L03
 
mov       rcx,rdi
call      qword ptr [r11]
mov       ebx,eax
test      ebx,ebx
jle       near ptr M03_L17
mov       rcx,[rbp+10]
mov       rdx,[rcx+8]
mov       eax,[rdx+8]
mov       r8d,[rcx+10]
sub       eax,r8d
cmp       eax,ebx
jge       short M03_L05
add       r8d,ebx
jo        near ptr M03_L18
cmp       dword ptr [rdx+8],0
jne       short M03_L06
mov       edx,4
M03_L04
 
mov       eax,7FFFFFC7
cmp       edx,7FFFFFC7
cmova     edx,eax
cmp       edx,r8d
cmovl     edx,r8d
call      qword ptr [7FF9F5E8DFF8]; System.Collections.Generic.List`1[[System.__Canon, System.Private.CoreLib]].set_Capacity(Int32)
mov       rcx,[rbp+10]
M03_L05
 
mov       rdx,[rsi+30]
mov       rdx,[rdx]
mov       r11,[rdx+88]
test      r11,r11
je        short M03_L07
jmp       short M03_L08
M03_L06
 
mov       edx,[rdx+8]
add       edx,edx
jmp       short M03_L04
M03_L07
 
mov       rcx,rsi
mov       rdx,7FF9F6A40998
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
mov       rcx,[rbp+10]
M03_L08
 
mov       rdx,[rcx+8]
mov       r8d,[rcx+10]
mov       rcx,rdi
call      qword ptr [r11]
mov       rcx,[rbp+10]
add       [rcx+10],ebx
inc       dword ptr [rcx+14]
add       rsp,38
pop       rbx
pop       rsi
pop       rdi
pop       rbp
ret
M03_L09
 
mov       rcx,[rsi+30]
mov       rcx,[rcx]
mov       r11,[rcx+70]
test      r11,r11
je        short M03_L10
jmp       short M03_L11
M03_L10
 
mov       rcx,rsi
mov       rdx,7FF9F6A40950
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M03_L11
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-28],rax
jmp       short M03_L16
M03_L12
 
mov       rcx,[rsi+30]
mov       rcx,[rcx]
mov       r11,[rcx+78]
test      r11,r11
je        short M03_L13
jmp       short M03_L14
M03_L13
 
mov       rcx,rsi
mov       rdx,7FF9F6A40968
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M03_L14
 
mov       rcx,[rbp-28]
call      qword ptr [r11]
mov       r8,rax
mov       rcx,[rbp+10]
inc       dword ptr [rcx+14]
mov       rax,[rcx+8]
mov       edx,[rcx+10]
cmp       [rax+8],edx
jbe       short M03_L15
lea       r10d,[rdx+1]
mov       [rcx+10],r10d
movsxd    rdx,edx
mov       rcx,rax
call      CORINFO_HELP_ARRADDR_ST
jmp       short M03_L16
M03_L15
 
mov       rdx,r8
call      qword ptr [7FF9F5E8E130]; System.Collections.Generic.List`1[[System.__Canon, System.Private.CoreLib]].AddWithResize(System.__Canon)
M03_L16
 
mov       rcx,[rbp-28]
mov       r11,7FF9F5C91110
call      qword ptr [r11]
test      eax,eax
jne       short M03_L12
mov       rcx,rsp
call      M03_L20
nop
M03_L17
 
add       rsp,38
pop       rbx
pop       rsi
pop       rdi
pop       rbp
ret
M03_L18
 
call      CORINFO_HELP_OVERFLOW
M03_L19
 
mov       ecx,17
call      qword ptr [7FF9F603ED00]
int       3
M03_L20
 
push      rbp
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+50]
cmp       qword ptr [rbp-28],0
je        short M03_L21
mov       rcx,[rbp-28]
mov       r11,7FF9F5C91118
call      qword ptr [r11]
M03_L21
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       rbp
ret
 
BenchmarkDotNet.Engines.Consumer.Consume[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef)
push      rbx
mov       rbx,rcx
mov       rdx,[r8]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
pop       rbx
ret
 
System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,edx
mov       edi,[rbx+8]
lea       ebp,[rdi-1]
mov       r14d,ebp
xor       r15d,r15d
test      sil,1
je        short M05_L03
xor       r15d,r15d
test      edi,edi
jle       short M05_L03
M05_L00
 
mov       ecx,r15d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M05_L01
mov       rax,[7FFA534C0728]
test      byte ptr [rax+rcx],80
je        short M05_L03
jmp       short M05_L02
M05_L01
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M05_L03
M05_L02
 
inc       r15d
cmp       edi,r15d
jg        short M05_L00
M05_L03
 
test      sil,2
je        near ptr M05_L10
mov       r14d,ebp
cmp       r14d,r15d
jl        short M05_L10
mov       ecx,r14d
or        ecx,r15d
jl        short M05_L07
cmp       edi,r14d
jle       short M05_L07
M05_L04
 
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M05_L05
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M05_L10
jmp       short M05_L06
M05_L05
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M05_L10
M05_L06
 
dec       r14d
cmp       r14d,r15d
jge       short M05_L04
jmp       short M05_L10
M05_L07
 
cmp       r14d,edi
jae       short M05_L14
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M05_L08
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M05_L10
jmp       short M05_L09
M05_L08
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M05_L10
M05_L09
 
dec       r14d
cmp       r14d,r15d
jge       short M05_L07
M05_L10
 
mov       r8d,r14d
sub       r8d,r15d
inc       r8d
cmp       edi,r8d
jne       short M05_L12
mov       rax,rbx
M05_L11
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M05_L12
 
test      r8d,r8d
je        short M05_L13
mov       rcx,rbx
mov       edx,r15d
call      qword ptr [7FFA534A34A0]; Precode of System.String.InternalSubString(Int32, Int32)
jmp       short M05_L11
M05_L13
 
mov       rax,[7FFA534C08A0]
mov       rax,[rax]
jmp       short M05_L11
M05_L14
 
call      qword ptr [7FFA53493D20]; CORINFO_HELP_RNGCHKFAIL
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M06_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M06_L02
test      rbx,rbx
je        short M06_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M06_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M06_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FF9F5E85B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FF9F5E85B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M06_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M06_L01
 
call      qword ptr [7FF9F603EF40]
int       3
M06_L02
 
test      rbx,rbx
je        short M06_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M06_L04
M06_L03
 
mov       rax,1DB9BEC0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M06_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.SplitRemoveEmpty()
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,48
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
xor       eax,eax
mov       [rbp-40],rax
mov       [rbp-60],rsp
mov       rbx,rcx
mov       rsi,[rbx+298]
test      rsi,rsi
je        short M00_L00
xor       ecx,ecx
cmp       dword ptr [rsi+8],0
sete      cl
test      ecx,ecx
sete      cl
movzx     ecx,cl
cmp       dword ptr [rsi+8],0
jne       short M00_L01
jmp       short M00_L01
M00_L00
 
xor       ecx,ecx
M00_L01
 
test      ecx,ecx
je        near ptr M00_L28
cmp       dword ptr [rsi+8],0
je        short M00_L05
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       short M00_L02
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L30
jmp       short M00_L03
M00_L02
 
call      qword ptr [7FF9F671E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L30
M00_L03
 
mov       ecx,[rsi+8]
dec       ecx
cmp       ecx,[rsi+8]
jae       near ptr M00_L35
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L04
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L30
jmp       short M00_L05
M00_L04
 
call      qword ptr [7FF9F671E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L30
M00_L05
 
mov       edi,[rsi+8]
test      edi,edi
je        short M00_L09
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       short M00_L06
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L31
jmp       short M00_L07
M00_L06
 
call      qword ptr [7FF9F671E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L31
M00_L07
 
dec       edi
mov       ecx,edi
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L08
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L31
jmp       short M00_L09
M00_L08
 
call      qword ptr [7FF9F671E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L31
M00_L09
 
mov       rcx,offset MT_System.Char[]
mov       edx,1
call      CORINFO_HELP_NEWARR_1_VC
mov       word ptr [rax+10],2C
cmp       [rsi],sil
add       rax,10
mov       rcx,rsi
mov       [rbp-50],rax
mov       dword ptr [rbp-48],1
lea       rdx,[rbp-50]
mov       r8d,7FFFFFFF
mov       r9d,1
call      qword ptr [7FF9F5DC70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
mov       rsi,rax
mov       rcx,offset MT_System.Collections.Generic.List`1[[System.String, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       rcx,227FC401D90
mov       rdx,[rcx]
lea       rcx,[rdi+8]
call      CORINFO_HELP_ASSIGN_REF
mov       rdx,rsi
test      rdx,rdx
je        near ptr M00_L32
mov       rcx,rdi
call      qword ptr [7FF9F5E7E160]; System.Collections.Generic.List`1[[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1)
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyCollection`1[[System.String, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
lea       rcx,[rsi+8]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rsi+8]
mov       r11,7FF9F5C81100
call      qword ptr [r11]
test      eax,eax
je        near ptr M00_L33
mov       rcx,[rsi+8]
mov       r11,7FF9F5C81108
call      qword ptr [r11]
mov       rcx,rax
M00_L10
 
mov       [rbp-58],rcx
test      rcx,rcx
je        near ptr M00_L20
mov       rsi,[rcx]
mov       rdi,offset MT_System.Collections.Generic.List`1+Enumerator[[System.String, System.Private.CoreLib]]
cmp       rsi,rdi
jne       near ptr M00_L20
jmp       short M00_L13
M00_L11
 
mov       rcx,[rbp-58]
mov       rax,[rcx+10]
M00_L12
 
mov       [rbp-40],rax
mov       rcx,[rbx+18]
lea       r8,[rbp-40]
mov       rdx,offset MD_BenchmarkDotNet.Engines.Consumer.Consume[[System.String, System.Private.CoreLib]](System.String ByRef)
cmp       [rcx],ecx
call      qword ptr [7FF9F688D920]; BenchmarkDotNet.Engines.Consumer.Consume[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef)
mov       rcx,[rbp-58]
M00_L13
 
cmp       rsi,rdi
jne       short M00_L15
lea       r14,[rcx+8]
mov       r15,[r14]
mov       rax,r15
mov       edx,[r14+14]
cmp       edx,[rax+14]
jne       short M00_L16
mov       edx,[r14+10]
cmp       edx,[rax+10]
jae       short M00_L17
lea       rcx,[r14+8]
mov       r13,[rax+8]
mov       r12d,[r14+10]
cmp       r12d,[r13+8]
jae       short M00_L14
mov       edx,r12d
mov       rdx,[r13+rdx*8+10]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
inc       dword ptr [r14+10]
jmp       short M00_L11
M00_L14
 
call      CORINFO_HELP_RNGCHKFAIL
M00_L15
 
mov       r11,7FF9F5C810E8
call      qword ptr [r11]
test      eax,eax
jne       near ptr M00_L23
jmp       near ptr M00_L26
M00_L16
 
mov       r11d,[r14+14]
cmp       r11d,[r15+14]
jne       near ptr M00_L22
M00_L17
 
mov       r11d,[r15+10]
inc       r11d
mov       [r14+10],r11d
xor       r11d,r11d
mov       [r14+8],r11
jmp       near ptr M00_L26
M00_L18
 
mov       rcx,[rbp-58]
mov       rax,[rcx+10]
M00_L19
 
mov       [rbp-40],rax
mov       rcx,[rbx+18]
lea       r8,[rbp-40]
mov       rdx,offset MD_BenchmarkDotNet.Engines.Consumer.Consume[[System.String, System.Private.CoreLib]](System.String ByRef)
cmp       [rcx],ecx
call      qword ptr [7FF9F688D920]; BenchmarkDotNet.Engines.Consumer.Consume[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef)
mov       rcx,[rbp-58]
M00_L20
 
mov       rsi,[rcx]
mov       rdi,offset MT_System.Collections.Generic.List`1+Enumerator[[System.String, System.Private.CoreLib]]
cmp       rsi,rdi
jne       short M00_L21
lea       r14,[rcx+8]
mov       rax,[r14]
mov       r15d,[r14+14]
cmp       r15d,[rax+14]
jne       short M00_L24
mov       r12d,[r14+10]
cmp       r12d,[rax+10]
jae       short M00_L25
lea       rcx,[r14+8]
mov       r13,[rax+8]
cmp       r12d,[r13+8]
jae       near ptr M00_L14
mov       edx,r12d
mov       rdx,[r13+rdx*8+10]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
inc       dword ptr [r14+10]
jmp       short M00_L18
M00_L21
 
mov       r11,7FF9F5C810E8
call      qword ptr [r11]
test      eax,eax
je        short M00_L26
mov       rcx,[rbp-58]
mov       r11,7FF9F5C810F0
call      qword ptr [r11]
jmp       near ptr M00_L19
M00_L22
 
call      qword ptr [7FF9F602EFE8]
int       3
M00_L23
 
mov       rcx,[rbp-58]
mov       r11,7FF9F5C810F0
call      qword ptr [r11]
jmp       near ptr M00_L12
M00_L24
 
mov       r11,[r14]
cmp       r15d,[r11+14]
jne       short M00_L22
M00_L25
 
mov       r11,[r14]
mov       r11d,[r11+10]
inc       r11d
mov       [r14+10],r11d
xor       r11d,r11d
mov       [r14+8],r11
M00_L26
 
cmp       rsi,rdi
jne       near ptr M00_L34
M00_L27
 
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M00_L28
 
call      qword ptr [7FF9F6345368]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L29
call      qword ptr [7FF9F63450B0]
mov       rbx,rax
M00_L29
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,2688E1A8468
mov       r8,rbx
call      qword ptr [7FF9F6056670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L30
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DC73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L05
M00_L31
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DC73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L09
M00_L32
 
call      qword ptr [7FF9F63452C0]
mov       ecx,43
mov       rdx,7FF9F62C3C60
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1446
mov       rdx,7FF9F6155A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DC6B08]; System.String.Concat(System.String, System.String)
mov       rdi,rax
mov       ecx,1
mov       rdx,7FF9F62C3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F5DC6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63450B0]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FF9F6056670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L33
 
mov       rcx,7FF9F5D05120
mov       edx,20
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,227FC402008
mov       rcx,[rcx]
jmp       near ptr M00_L10
M00_L34
 
mov       rcx,[rbp-58]
mov       r11,7FF9F5C810F8
call      qword ptr [r11]
jmp       near ptr M00_L27
M00_L35
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M00_L36
mov       rcx,[rbp-58]
mov       rsi,[rcx]
mov       rdi,offset MT_System.Collections.Generic.List`1+Enumerator[[System.String, System.Private.CoreLib]]
cmp       rsi,rdi
je        short M00_L36
mov       r11,7FF9F5C810F8
call      qword ptr [r11]
M00_L36
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
sub       rsp,28
movzx     ecx,cx
call      qword ptr [7FFA534A7370]; Precode of System.Globalization.CharUnicodeInfo.GetCategoryCasingTableOffsetNoBoundsChecks(UInt32)
mov       rcx,[7FFA534C0750]
cmp       byte ptr [rcx+rax],0
setl      al
movzx     eax,al
add       rsp,28
ret
 
System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,98
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
vmovdqa   xmmword ptr [rbp+20],xmm4
vmovdqa   xmmword ptr [rbp+30],xmm4
vmovdqa   xmmword ptr [rbp+40],xmm4
vmovdqa   xmmword ptr [rbp+50],xmm4
mov       [rbp+60],rax
mov       rax,183D9D9BB835
mov       [rbp],rax
mov       rbx,rcx
mov       esi,r8d
mov       edi,r9d
test      esi,esi
jl        near ptr M02_L12
test      edi,0FFFFFFFC
jne       near ptr M02_L13
cmp       esi,1
jle       short M02_L01
mov       r14d,[rbx+8]
test      r14d,r14d
je        short M02_L01
cmp       dword ptr [rdx+8],0
je        near ptr M02_L14
M02_L00
 
test      [rsp],esp
sub       rsp,200
lea       rcx,[rsp+30]
mov       [rbp+58],rcx
mov       dword ptr [rbp+60],80
xor       ecx,ecx
mov       [rbp+48],rcx
mov       [rbp+50],ecx
lea       rcx,[rbx+0C]
mov       [rbp+38],rcx
mov       [rbp+40],r14d
vmovdqu   xmm0,xmmword ptr [rdx]
vmovdqu   xmmword ptr [rbp+28],xmm0
lea       rcx,[rbp+38]
lea       rdx,[rbp+28]
lea       r8,[rbp+48]
call      qword ptr [7FF9F5DC71B0]; System.String.MakeSeparatorListAny(System.ReadOnlySpan`1, System.ReadOnlySpan`1, System.Collections.Generic.ValueListBuilder`1 ByRef)
mov       eax,[rbp+50]
cmp       eax,[rbp+60]
ja        near ptr M02_L06
mov       r8,[rbp+58]
test      eax,eax
jne       short M02_L07
mov       esi,1
M02_L01
 
test      esi,esi
je        near ptr M02_L16
mov       r14,rbx
test      dil,2
jne       near ptr M02_L15
M02_L02
 
test      dil,1
je        short M02_L03
cmp       dword ptr [r14+8],0
je        near ptr M02_L16
M02_L03
 
mov       rcx,offset MT_System.String[]
mov       edx,1
call      CORINFO_HELP_NEWARR_1_OBJ
mov       r15,rax
lea       rcx,[r15+10]
mov       rdx,r14
call      CORINFO_HELP_ASSIGN_REF
mov       rax,r15
M02_L04
 
mov       rcx,183D9D9BB835
cmp       [rbp],rcx
je        short M02_L05
call      CORINFO_HELP_FAIL_FAST
M02_L05
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M02_L06
 
call      qword ptr [7FF9F602E9D0]
int       3
M02_L07
 
test      edi,edi
jne       short M02_L08
xor       edi,edi
mov       [rbp+18],r8
mov       [rbp+20],eax
mov       [rbp+8],rdi
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],esi
mov       rcx,rbx
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DC7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       r14,rax
jmp       short M02_L09
M02_L08
 
xor       ecx,ecx
mov       [rbp+18],r8
mov       [rbp+20],eax
mov       [rbp+8],rcx
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],esi
mov       [rsp+28],edi
mov       rcx,rbx
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DC7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       r14,rax
M02_L09
 
mov       rdx,[rbp+48]
test      rdx,rdx
je        short M02_L10
xor       ecx,ecx
mov       [rbp+48],rcx
mov       rcx,227FC401F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65C51C8]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M02_L10
 
mov       rax,r14
mov       rcx,183D9D9BB835
cmp       [rbp],rcx
je        short M02_L11
call      CORINFO_HELP_FAIL_FAST
M02_L11
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M02_L12
 
mov       ecx,1C7
mov       rdx,7FF9F5C74000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,esi
call      qword ptr [7FF9F688FF90]
int       3
M02_L13
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F602ECB8]
int       3
M02_L14
 
mov       ecx,edi
and       ecx,0FFFFFFFD
cmp       r14d,esi
cmovl     edi,ecx
jmp       near ptr M02_L00
M02_L15
 
mov       rcx,rbx
cmp       [rcx],ecx
call      qword ptr [7FF9F5DC7318]; System.String.Trim()
mov       r14,rax
jmp       near ptr M02_L02
M02_L16
 
mov       rcx,7FF9F5D05120
mov       edx,79
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rax,227FC402000
mov       rax,[rax]
jmp       near ptr M02_L04
 
System.Collections.Generic.List`1[[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1)
push      rbp
push      rdi
push      rsi
push      rbx
sub       rsp,38
lea       rbp,[rsp+50]
mov       [rbp-30],rsp
mov       [rbp-20],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
test      rbx,rbx
je        near ptr M03_L19
mov       rsi,[rcx]
mov       rdx,rsi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       rax,[rax+68]
test      rax,rax
je        near ptr M03_L05
M03_L00
 
mov       rcx,rax
mov       rdx,rbx
call      qword ptr [7FF9F5DC4348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       rdi,rax
test      rdi,rdi
je        near ptr M03_L09
mov       rcx,[rsi+30]
mov       rcx,[rcx]
mov       r11,[rcx+80]
test      r11,r11
je        near ptr M03_L06
M03_L01
 
mov       rcx,rdi
call      qword ptr [r11]
mov       ebx,eax
test      ebx,ebx
jle       near ptr M03_L17
mov       rcx,[rbp+10]
mov       rdx,[rcx+8]
mov       eax,[rdx+8]
mov       r8d,[rcx+10]
sub       eax,r8d
cmp       eax,ebx
jge       short M03_L03
add       r8d,ebx
jo        near ptr M03_L18
cmp       dword ptr [rdx+8],0
jne       near ptr M03_L08
mov       edx,4
M03_L02
 
mov       eax,7FFFFFC7
cmp       edx,7FFFFFC7
cmova     edx,eax
cmp       edx,r8d
cmovl     edx,r8d
call      qword ptr [7FF9F5E7DFF8]; System.Collections.Generic.List`1[[System.__Canon, System.Private.CoreLib]].set_Capacity(Int32)
mov       rcx,[rbp+10]
M03_L03
 
mov       rdx,[rsi+30]
mov       rdx,[rdx]
mov       r11,[rdx+88]
test      r11,r11
je        short M03_L07
M03_L04
 
mov       rdx,[rcx+8]
mov       r8d,[rcx+10]
mov       rcx,rdi
call      qword ptr [r11]
mov       rcx,[rbp+10]
add       [rcx+10],ebx
inc       dword ptr [rcx+14]
add       rsp,38
pop       rbx
pop       rsi
pop       rdi
pop       rbp
ret
M03_L05
 
mov       rcx,rdx
mov       rdx,7FF9F6A30678
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
jmp       near ptr M03_L00
M03_L06
 
mov       rcx,rsi
mov       rdx,7FF9F6A306B8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M03_L01
M03_L07
 
mov       rcx,rsi
mov       rdx,7FF9F6A306D0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
mov       rcx,[rbp+10]
jmp       short M03_L04
M03_L08
 
mov       edx,[rdx+8]
add       edx,edx
jmp       near ptr M03_L02
M03_L09
 
mov       rcx,[rsi+30]
mov       rcx,[rcx]
mov       r11,[rcx+70]
test      r11,r11
je        short M03_L10
jmp       short M03_L11
M03_L10
 
mov       rcx,rsi
mov       rdx,7FF9F6A30688
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M03_L11
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-28],rax
jmp       short M03_L16
M03_L12
 
mov       rcx,[rsi+30]
mov       rcx,[rcx]
mov       r11,[rcx+78]
test      r11,r11
je        short M03_L13
jmp       short M03_L14
M03_L13
 
mov       rcx,rsi
mov       rdx,7FF9F6A306A0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M03_L14
 
mov       rcx,[rbp-28]
call      qword ptr [r11]
mov       r8,rax
mov       rcx,[rbp+10]
inc       dword ptr [rcx+14]
mov       rax,[rcx+8]
mov       edx,[rcx+10]
cmp       [rax+8],edx
jbe       short M03_L15
lea       r10d,[rdx+1]
mov       [rcx+10],r10d
movsxd    rdx,edx
mov       rcx,rax
call      CORINFO_HELP_ARRADDR_ST
jmp       short M03_L16
M03_L15
 
mov       rdx,r8
call      qword ptr [7FF9F5E7E130]; System.Collections.Generic.List`1[[System.__Canon, System.Private.CoreLib]].AddWithResize(System.__Canon)
M03_L16
 
mov       rcx,[rbp-28]
mov       r11,7FF9F5C81110
call      qword ptr [r11]
test      eax,eax
jne       short M03_L12
mov       rcx,rsp
call      M03_L20
nop
M03_L17
 
add       rsp,38
pop       rbx
pop       rsi
pop       rdi
pop       rbp
ret
M03_L18
 
call      CORINFO_HELP_OVERFLOW
M03_L19
 
mov       ecx,17
call      qword ptr [7FF9F602ED00]
int       3
M03_L20
 
push      rbp
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+50]
cmp       qword ptr [rbp-28],0
je        short M03_L21
mov       rcx,[rbp-28]
mov       r11,7FF9F5C81118
call      qword ptr [r11]
M03_L21
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       rbp
ret
 
BenchmarkDotNet.Engines.Consumer.Consume[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef)
push      rbx
mov       rbx,rcx
mov       rdx,[r8]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
pop       rbx
ret
 
System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,edx
mov       edi,[rbx+8]
lea       ebp,[rdi-1]
mov       r14d,ebp
xor       r15d,r15d
test      sil,1
je        short M05_L03
xor       r15d,r15d
test      edi,edi
jle       short M05_L03
M05_L00
 
mov       ecx,r15d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M05_L01
mov       rax,[7FFA534C0728]
test      byte ptr [rax+rcx],80
je        short M05_L03
jmp       short M05_L02
M05_L01
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M05_L03
M05_L02
 
inc       r15d
cmp       edi,r15d
jg        short M05_L00
M05_L03
 
test      sil,2
je        near ptr M05_L10
mov       r14d,ebp
cmp       r14d,r15d
jl        short M05_L10
mov       ecx,r14d
or        ecx,r15d
jl        short M05_L07
cmp       edi,r14d
jle       short M05_L07
M05_L04
 
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M05_L05
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M05_L10
jmp       short M05_L06
M05_L05
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M05_L10
M05_L06
 
dec       r14d
cmp       r14d,r15d
jge       short M05_L04
jmp       short M05_L10
M05_L07
 
cmp       r14d,edi
jae       short M05_L14
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M05_L08
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M05_L10
jmp       short M05_L09
M05_L08
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M05_L10
M05_L09
 
dec       r14d
cmp       r14d,r15d
jge       short M05_L07
M05_L10
 
mov       r8d,r14d
sub       r8d,r15d
inc       r8d
cmp       edi,r8d
jne       short M05_L12
mov       rax,rbx
M05_L11
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M05_L12
 
test      r8d,r8d
je        short M05_L13
mov       rcx,rbx
mov       edx,r15d
call      qword ptr [7FFA534A34A0]; Precode of System.String.InternalSubString(Int32, Int32)
jmp       short M05_L11
M05_L13
 
mov       rax,[7FFA534C08A0]
mov       rax,[rax]
jmp       short M05_L11
M05_L14
 
call      qword ptr [7FFA53493D20]; CORINFO_HELP_RNGCHKFAIL
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M06_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M06_L02
test      rbx,rbx
je        short M06_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M06_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M06_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FF9F5E75B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FF9F5E75B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M06_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M06_L01
 
call      qword ptr [7FF9F602EF40]
int       3
M06_L02
 
test      rbx,rbx
je        short M06_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M06_L04
M06_L03
 
mov       rax,2688E1A0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M06_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.SplitRemoveEmpty()
push      rbp
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbx
sub       rsp,50
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqu   xmmword ptr [rbp-48],xmm4
xor       eax,eax
mov       [rbp-38],rax
mov       [rbp-60],rsp
mov       rbx,rcx
mov       rsi,[rbx+298]
test      rsi,rsi
je        short M00_L00
xor       ecx,ecx
cmp       dword ptr [rsi+8],0
sete      cl
test      ecx,ecx
sete      cl
movzx     ecx,cl
cmp       dword ptr [rsi+8],0
jne       short M00_L01
jmp       short M00_L01
M00_L00
 
xor       ecx,ecx
M00_L01
 
test      ecx,ecx
je        near ptr M00_L21
cmp       dword ptr [rsi+8],0
je        short M00_L05
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       short M00_L02
mov       ecx,ecx
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L23
jmp       short M00_L03
M00_L02
 
call      qword ptr [7FF9F66FE028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L23
M00_L03
 
mov       ecx,[rsi+8]
dec       ecx
cmp       ecx,[rsi+8]
jae       near ptr M00_L28
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L04
mov       ecx,ecx
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L23
jmp       short M00_L05
M00_L04
 
call      qword ptr [7FF9F66FE028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L23
M00_L05
 
mov       edi,[rsi+8]
test      edi,edi
je        short M00_L09
movzx     ecx,word ptr [rsi+0C]
cmp       ecx,100
jae       short M00_L06
mov       ecx,ecx
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L24
jmp       short M00_L07
M00_L06
 
call      qword ptr [7FF9F66FE028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L24
M00_L07
 
dec       edi
mov       ecx,edi
movzx     ecx,word ptr [rsi+rcx*2+0C]
cmp       ecx,100
jae       short M00_L08
mov       ecx,ecx
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       near ptr M00_L24
jmp       short M00_L09
M00_L08
 
call      qword ptr [7FF9F66FE028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       near ptr M00_L24
M00_L09
 
mov       rcx,offset MT_System.Char[]
mov       edx,1
call      CORINFO_HELP_NEWARR_1_VC
mov       word ptr [rax+10],2C
cmp       [rsi],sil
add       rax,10
mov       rcx,rsi
mov       [rbp-48],rax
mov       dword ptr [rbp-40],1
lea       rdx,[rbp-48]
mov       r8d,7FFFFFFF
mov       r9d,1
call      qword ptr [7FF9F5DA70C0]; System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
mov       rsi,rax
mov       rcx,offset MT_System.Collections.Generic.List`1[[System.String, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       rcx,1716E001D90
mov       rdx,[rcx]
lea       rcx,[rdi+8]
call      CORINFO_HELP_ASSIGN_REF
mov       rdx,rsi
test      rdx,rdx
je        near ptr M00_L25
mov       rcx,rdi
call      qword ptr [7FF9F5E5E160]; System.Collections.Generic.List`1[[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1)
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyCollection`1[[System.String, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
lea       rcx,[rsi+8]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rsi+8]
mov       r11,7FF9F5C61110
call      qword ptr [r11]
test      eax,eax
je        near ptr M00_L26
mov       rcx,[rsi+8]
mov       r11,7FF9F5C61118
call      qword ptr [r11]
mov       rcx,rax
M00_L10
 
mov       [rbp-50],rcx
mov       rsi,[rcx]
mov       rdi,offset MT_System.Collections.Generic.List`1+Enumerator[[System.String, System.Private.CoreLib]]
M00_L11
 
cmp       rsi,rdi
jne       near ptr M00_L16
lea       r14,[rcx+8]
mov       r15,[r14]
mov       rdx,r15
mov       eax,[r14+14]
cmp       eax,[rdx+14]
jne       short M00_L14
mov       eax,[r14+10]
cmp       eax,[rdx+10]
jae       short M00_L15
lea       rcx,[r14+8]
mov       rdx,[rdx+8]
mov       eax,[r14+10]
cmp       eax,[rdx+8]
jae       short M00_L13
mov       rdx,[rdx+rax*8+10]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
inc       dword ptr [r14+10]
mov       rcx,[rbp-50]
mov       r13,[rcx+10]
M00_L12
 
mov       [rbp-38],r13
mov       rcx,[rbx+18]
lea       r8,[rbp-38]
mov       rdx,offset MD_BenchmarkDotNet.Engines.Consumer.Consume[[System.String, System.Private.CoreLib]](System.String ByRef)
cmp       [rcx],ecx
call      qword ptr [7FF9F686D920]; BenchmarkDotNet.Engines.Consumer.Consume[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef)
mov       rcx,[rbp-50]
jmp       short M00_L11
M00_L13
 
call      CORINFO_HELP_RNGCHKFAIL
M00_L14
 
mov       r11d,[r14+14]
cmp       r11d,[r15+14]
jne       short M00_L17
M00_L15
 
mov       r11d,[r15+10]
inc       r11d
mov       [r14+10],r11d
xor       r11d,r11d
mov       [r14+8],r11
jmp       short M00_L19
M00_L16
 
mov       r11,7FF9F5C610F8
call      qword ptr [r11]
test      eax,eax
jne       short M00_L18
jmp       short M00_L19
M00_L17
 
call      qword ptr [7FF9F600EFE8]
int       3
M00_L18
 
mov       rcx,[rbp-50]
mov       r11,7FF9F5C61100
call      qword ptr [r11]
mov       r13,rax
jmp       short M00_L12
M00_L19
 
cmp       rsi,rdi
jne       near ptr M00_L27
M00_L20
 
add       rsp,50
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M00_L21
 
call      qword ptr [7FF9F6325368]
mov       rbx,rax
test      rbx,rbx
jne       short M00_L22
call      qword ptr [7FF9F63250B0]
mov       rbx,rax
M00_L22
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       r13,rax
mov       rcx,r13
mov       rdx,1B1FFE58468
mov       r8,rbx
call      qword ptr [7FF9F6036670]
mov       rcx,r13
call      CORINFO_HELP_THROW
M00_L23
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DA73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L05
M00_L24
 
mov       rcx,rsi
mov       edx,3
call      qword ptr [7FF9F5DA73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
mov       rsi,rax
jmp       near ptr M00_L09
M00_L25
 
call      qword ptr [7FF9F63252C0]
mov       ecx,43
mov       rdx,7FF9F62A3C60
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1446
mov       rdx,7FF9F6135A18
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FF9F5DA6B08]; System.String.Concat(System.String, System.String)
mov       rdi,rax
mov       ecx,1
mov       rdx,7FF9F62A3C60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FF9F5DA6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FF9F63250B0]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FF9F6036670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L26
 
mov       rcx,7FF9F5CE5120
mov       edx,20
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rcx,1716E002008
mov       rcx,[rcx]
jmp       near ptr M00_L10
M00_L27
 
mov       rcx,[rbp-50]
mov       r11,7FF9F5C61108
call      qword ptr [r11]
jmp       near ptr M00_L20
M00_L28
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
push      rbp
push      r15
push      r14
push      r13
push      rdi
push      rsi
push      rbx
sub       rsp,30
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-50],0
je        short M00_L29
mov       rcx,[rbp-50]
mov       rsi,[rcx]
mov       rdi,offset MT_System.Collections.Generic.List`1+Enumerator[[System.String, System.Private.CoreLib]]
cmp       rsi,rdi
je        short M00_L29
mov       r11,7FF9F5C61108
call      qword ptr [r11]
M00_L29
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
sub       rsp,28
movzx     ecx,cx
call      qword ptr [7FFA534A7370]; Precode of System.Globalization.CharUnicodeInfo.GetCategoryCasingTableOffsetNoBoundsChecks(UInt32)
mov       rcx,[7FFA534C0750]
cmp       byte ptr [rcx+rax],0
setl      al
movzx     eax,al
add       rsp,28
ret
 
System.String.SplitInternal(System.ReadOnlySpan`1, Int32, System.StringSplitOptions)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,98
vzeroupper
lea       rbp,[rsp+30]
xor       eax,eax
mov       [rbp+8],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp+10],xmm4
vmovdqa   xmmword ptr [rbp+20],xmm4
vmovdqa   xmmword ptr [rbp+30],xmm4
vmovdqa   xmmword ptr [rbp+40],xmm4
vmovdqa   xmmword ptr [rbp+50],xmm4
mov       [rbp+60],rax
mov       rax,0F216D89A9229
mov       [rbp],rax
mov       rbx,rcx
mov       esi,r8d
mov       edi,r9d
test      esi,esi
jl        near ptr M02_L12
test      edi,0FFFFFFFC
jne       near ptr M02_L13
cmp       esi,1
jle       short M02_L01
mov       r14d,[rbx+8]
test      r14d,r14d
je        short M02_L01
cmp       dword ptr [rdx+8],0
je        near ptr M02_L14
M02_L00
 
test      [rsp],esp
sub       rsp,200
lea       rcx,[rsp+30]
mov       [rbp+58],rcx
mov       dword ptr [rbp+60],80
xor       ecx,ecx
mov       [rbp+48],rcx
mov       [rbp+50],ecx
lea       rcx,[rbx+0C]
mov       [rbp+38],rcx
mov       [rbp+40],r14d
vmovdqu   xmm0,xmmword ptr [rdx]
vmovdqu   xmmword ptr [rbp+28],xmm0
lea       rcx,[rbp+38]
lea       rdx,[rbp+28]
lea       r8,[rbp+48]
call      qword ptr [7FF9F5DA71B0]; System.String.MakeSeparatorListAny(System.ReadOnlySpan`1, System.ReadOnlySpan`1, System.Collections.Generic.ValueListBuilder`1 ByRef)
mov       eax,[rbp+50]
cmp       eax,[rbp+60]
ja        near ptr M02_L06
mov       r8,[rbp+58]
test      eax,eax
jne       short M02_L07
mov       esi,1
M02_L01
 
test      esi,esi
je        near ptr M02_L16
mov       r14,rbx
test      dil,2
jne       near ptr M02_L15
M02_L02
 
test      dil,1
je        short M02_L03
cmp       dword ptr [r14+8],0
je        near ptr M02_L16
M02_L03
 
mov       rcx,offset MT_System.String[]
mov       edx,1
call      CORINFO_HELP_NEWARR_1_OBJ
mov       r15,rax
lea       rcx,[r15+10]
mov       rdx,r14
call      CORINFO_HELP_ASSIGN_REF
mov       rax,r15
M02_L04
 
mov       rcx,0F216D89A9229
cmp       [rbp],rcx
je        short M02_L05
call      CORINFO_HELP_FAIL_FAST
M02_L05
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M02_L06
 
call      qword ptr [7FF9F600E9D0]
int       3
M02_L07
 
test      edi,edi
jne       short M02_L08
xor       edi,edi
mov       [rbp+18],r8
mov       [rbp+20],eax
mov       [rbp+8],rdi
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],esi
mov       rcx,rbx
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DA7180]; System.String.SplitWithoutPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32)
mov       r14,rax
jmp       short M02_L09
M02_L08
 
xor       ecx,ecx
mov       [rbp+18],r8
mov       [rbp+20],eax
mov       [rbp+8],rcx
xor       ecx,ecx
mov       [rbp+10],ecx
mov       [rsp+20],esi
mov       [rsp+28],edi
mov       rcx,rbx
lea       rdx,[rbp+18]
lea       r8,[rbp+8]
mov       r9d,1
call      qword ptr [7FF9F5DA7198]; System.String.SplitWithPostProcessing(System.ReadOnlySpan`1, System.ReadOnlySpan`1, Int32, Int32, System.StringSplitOptions)
mov       r14,rax
M02_L09
 
mov       rdx,[rbp+48]
test      rdx,rdx
je        short M02_L10
xor       ecx,ecx
mov       [rbp+48],rcx
mov       rcx,1716E001F28
mov       rcx,[rcx]
xor       r8d,r8d
call      qword ptr [7FF9F65A4C48]; Precode of System.Buffers.SharedArrayPool`1[[System.Int32, System.Private.CoreLib]].Return(Int32[], Boolean)
M02_L10
 
mov       rax,r14
mov       rcx,0F216D89A9229
cmp       [rbp],rcx
je        short M02_L11
call      CORINFO_HELP_FAIL_FAST
M02_L11
 
nop
lea       rsp,[rbp+68]
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M02_L12
 
mov       ecx,1C7
mov       rdx,7FF9F5C54000
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,esi
call      qword ptr [7FF9F686FF90]
int       3
M02_L13
 
mov       ecx,45
mov       edx,59
call      qword ptr [7FF9F600ECB8]
int       3
M02_L14
 
mov       ecx,edi
and       ecx,0FFFFFFFD
cmp       r14d,esi
cmovl     edi,ecx
jmp       near ptr M02_L00
M02_L15
 
mov       rcx,rbx
cmp       [rcx],ecx
call      qword ptr [7FF9F5DA7318]; System.String.Trim()
mov       r14,rax
jmp       near ptr M02_L02
M02_L16
 
mov       rcx,7FF9F5CE5120
mov       edx,79
call      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov       rax,1716E002000
mov       rax,[rax]
jmp       near ptr M02_L04
 
System.Collections.Generic.List`1[[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1)
push      rbp
push      rdi
push      rsi
push      rbx
sub       rsp,38
lea       rbp,[rsp+50]
mov       [rbp-30],rsp
mov       [rbp-20],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
test      rbx,rbx
je        near ptr M03_L19
mov       rsi,[rcx]
mov       rdx,rsi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       rax,[rax+68]
test      rax,rax
je        short M03_L00
jmp       short M03_L01
M03_L00
 
mov       rcx,rdx
mov       rdx,7FF9F6A10070
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
M03_L01
 
mov       rcx,rax
mov       rdx,rbx
call      qword ptr [7FF9F5DA4348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       rdi,rax
test      rdi,rdi
je        near ptr M03_L09
mov       rcx,[rsi+30]
mov       rcx,[rcx]
mov       r11,[rcx+80]
test      r11,r11
je        short M03_L02
jmp       short M03_L03
M03_L02
 
mov       rcx,rsi
mov       rdx,7FF9F6A100B0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M03_L03
 
mov       rcx,rdi
call      qword ptr [r11]
mov       ebx,eax
test      ebx,ebx
jle       near ptr M03_L17
mov       rcx,[rbp+10]
mov       rdx,[rcx+8]
mov       eax,[rdx+8]
mov       r8d,[rcx+10]
sub       eax,r8d
cmp       eax,ebx
jge       short M03_L05
add       r8d,ebx
jo        near ptr M03_L18
cmp       dword ptr [rdx+8],0
jne       short M03_L06
mov       edx,4
M03_L04
 
mov       eax,7FFFFFC7
cmp       edx,7FFFFFC7
cmova     edx,eax
cmp       edx,r8d
cmovl     edx,r8d
call      qword ptr [7FF9F5E5DFF8]; System.Collections.Generic.List`1[[System.__Canon, System.Private.CoreLib]].set_Capacity(Int32)
mov       rcx,[rbp+10]
M03_L05
 
mov       rdx,[rsi+30]
mov       rdx,[rdx]
mov       r11,[rdx+88]
test      r11,r11
je        short M03_L07
jmp       short M03_L08
M03_L06
 
mov       edx,[rdx+8]
add       edx,edx
jmp       short M03_L04
M03_L07
 
mov       rcx,rsi
mov       rdx,7FF9F6A100C8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
mov       rcx,[rbp+10]
M03_L08
 
mov       rdx,[rcx+8]
mov       r8d,[rcx+10]
mov       rcx,rdi
call      qword ptr [r11]
mov       rcx,[rbp+10]
add       [rcx+10],ebx
inc       dword ptr [rcx+14]
add       rsp,38
pop       rbx
pop       rsi
pop       rdi
pop       rbp
ret
M03_L09
 
mov       rcx,[rsi+30]
mov       rcx,[rcx]
mov       r11,[rcx+70]
test      r11,r11
je        short M03_L10
jmp       short M03_L11
M03_L10
 
mov       rcx,rsi
mov       rdx,7FF9F6A10080
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M03_L11
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-28],rax
jmp       short M03_L16
M03_L12
 
mov       rcx,[rsi+30]
mov       rcx,[rcx]
mov       r11,[rcx+78]
test      r11,r11
je        short M03_L13
jmp       short M03_L14
M03_L13
 
mov       rcx,rsi
mov       rdx,7FF9F6A10098
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M03_L14
 
mov       rcx,[rbp-28]
call      qword ptr [r11]
mov       r8,rax
mov       rcx,[rbp+10]
inc       dword ptr [rcx+14]
mov       rax,[rcx+8]
mov       edx,[rcx+10]
cmp       [rax+8],edx
jbe       short M03_L15
lea       r10d,[rdx+1]
mov       [rcx+10],r10d
movsxd    rdx,edx
mov       rcx,rax
call      CORINFO_HELP_ARRADDR_ST
jmp       short M03_L16
M03_L15
 
mov       rdx,r8
call      qword ptr [7FF9F5E5E130]; System.Collections.Generic.List`1[[System.__Canon, System.Private.CoreLib]].AddWithResize(System.__Canon)
M03_L16
 
mov       rcx,[rbp-28]
mov       r11,7FF9F5C610E8
call      qword ptr [r11]
test      eax,eax
jne       short M03_L12
mov       rcx,rsp
call      M03_L20
nop
M03_L17
 
add       rsp,38
pop       rbx
pop       rsi
pop       rdi
pop       rbp
ret
M03_L18
 
call      CORINFO_HELP_OVERFLOW
M03_L19
 
mov       ecx,17
call      qword ptr [7FF9F600ED00]
int       3
M03_L20
 
push      rbp
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+50]
cmp       qword ptr [rbp-28],0
je        short M03_L21
mov       rcx,[rbp-28]
mov       r11,7FF9F5C610F0
call      qword ptr [r11]
M03_L21
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       rbp
ret
 
BenchmarkDotNet.Engines.Consumer.Consume[[System.__Canon, System.Private.CoreLib]](System.__Canon ByRef)
push      rbx
mov       rbx,rcx
mov       rdx,[r8]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
pop       rbx
ret
 
System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,edx
mov       edi,[rbx+8]
lea       ebp,[rdi-1]
mov       r14d,ebp
xor       r15d,r15d
test      sil,1
je        short M05_L03
xor       r15d,r15d
test      edi,edi
jle       short M05_L03
M05_L00
 
mov       ecx,r15d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M05_L01
mov       rax,[7FFA534C0728]
test      byte ptr [rax+rcx],80
je        short M05_L03
jmp       short M05_L02
M05_L01
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M05_L03
M05_L02
 
inc       r15d
cmp       edi,r15d
jg        short M05_L00
M05_L03
 
test      sil,2
je        near ptr M05_L10
mov       r14d,ebp
cmp       r14d,r15d
jl        short M05_L10
mov       ecx,r14d
or        ecx,r15d
jl        short M05_L07
cmp       edi,r14d
jle       short M05_L07
M05_L04
 
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M05_L05
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M05_L10
jmp       short M05_L06
M05_L05
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M05_L10
M05_L06
 
dec       r14d
cmp       r14d,r15d
jge       short M05_L04
jmp       short M05_L10
M05_L07
 
cmp       r14d,edi
jae       short M05_L14
mov       ecx,r14d
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M05_L08
mov       rsi,[7FFA534C0728]
test      byte ptr [rsi+rcx],80
je        short M05_L10
jmp       short M05_L09
M05_L08
 
call      qword ptr [7FFA534A7338]; Precode of System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
je        short M05_L10
M05_L09
 
dec       r14d
cmp       r14d,r15d
jge       short M05_L07
M05_L10
 
mov       r8d,r14d
sub       r8d,r15d
inc       r8d
cmp       edi,r8d
jne       short M05_L12
mov       rax,rbx
M05_L11
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M05_L12
 
test      r8d,r8d
je        short M05_L13
mov       rcx,rbx
mov       edx,r15d
call      qword ptr [7FFA534A34A0]; Precode of System.String.InternalSubString(Int32, Int32)
jmp       short M05_L11
M05_L13
 
mov       rax,[7FFA534C08A0]
mov       rax,[rax]
jmp       short M05_L11
M05_L14
 
call      qword ptr [7FFA53493D20]; CORINFO_HELP_RNGCHKFAIL
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M06_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M06_L02
test      rbx,rbx
je        short M06_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M06_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M06_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FF9F5E55B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FF9F5E55B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M06_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M06_L01
 
call      qword ptr [7FF9F600EF40]
int       3
M06_L02
 
test      rbx,rbx
je        short M06_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M06_L04
M06_L03
 
mov       rax,1B1FFE50008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M06_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.ToBase64()
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rcx,[rbx+298]
call      qword ptr [7FF9F62CD320]; DotNetTips.Spargine.Extensions.StringExtensions.ToBase64(System.String)
mov       eax,[rax+8]
mov       rcx,[rbx+18]
mov       [rcx+38],eax
add       rsp,20
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.StringExtensions.ToBase64(System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,48
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
xor       eax,eax
mov       [rsp+40],rax
mov       rbx,rcx
test      rbx,rbx
je        near ptr M01_L02
mov       rcx,offset MT_System.CharEnumerator
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       dword ptr [rsi+10],0FFFFFFFF
lea       rcx,[rsi+8]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
mov       eax,[rsi+10]
inc       eax
mov       rdx,[rsi+8]
mov       edx,[rdx+8]
cmp       eax,edx
jge       near ptr M01_L01
mov       [rsi+10],eax
mov       rdx,20ED040EF30
mov       rdi,[rdx]
lea       rax,[rbx+0C]
mov       [rsp+40],rax
mov       rbp,[rsp+40]
mov       r14d,[rbx+8]
mov       rdx,[rdi+10]
mov       r15d,r14d
test      rdx,rdx
je        near ptr M01_L03
mov       rcx,offset MT_System.Text.EncoderReplacementFallback
cmp       [rdx],rcx
jne       near ptr M01_L03
mov       rdx,[rdx+8]
cmp       dword ptr [rdx+8],1
jne       near ptr M01_L03
cmp       dword ptr [rdx+8],0
jbe       near ptr M01_L05
cmp       word ptr [rdx+0C],7F
ja        near ptr M01_L03
mov       esi,r15d
cmp       r15d,r14d
jne       near ptr M01_L04
M01_L00
 
xor       edx,edx
mov       [rsp+40],rdx
movsxd    rdx,esi
mov       rcx,offset MT_System.Byte[]
call      CORINFO_HELP_NEWARR_1_VC
mov       r14,rax
mov       [rsp+20],r14
xor       r9d,r9d
mov       [rsp+28],r9d
mov       r9d,[rbx+8]
mov       rcx,rdi
mov       rdx,rbx
xor       r8d,r8d
call      qword ptr [7FF9F62E9DA8]; System.Text.ASCIIEncoding.GetBytes(System.String, Int32, Int32, Byte[], Int32)
lea       rcx,[r14+10]
mov       edx,[r14+8]
mov       [rsp+30],rcx
mov       [rsp+38],edx
lea       rcx,[rsp+30]
xor       edx,edx
call      qword ptr [7FF9F6164648]; System.Convert.ToBase64String(System.ReadOnlySpan`1, System.Base64FormattingOptions)
nop
add       rsp,48
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L01
 
mov       [rsi+10],edx
M01_L02
 
mov       rax,24F623A0008
add       rsp,48
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L03
 
mov       edx,r14d
mov       rcx,rbp
call      qword ptr [7FF9F604C4C8]; System.Text.Ascii.GetIndexOfFirstNonAsciiChar_Vector(Char*, UIntPtr)
mov       r15d,eax
mov       esi,r15d
cmp       r15d,r14d
je        near ptr M01_L00
M01_L04
 
mov       rcx,rdi
mov       rdx,rbp
mov       r8d,r14d
mov       r9d,esi
call      qword ptr [7FF9F5DEC8A0]
add       esi,eax
jns       near ptr M01_L00
call      qword ptr [7FF9F5DEC7E0]
int       3
M01_L05
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.ToBase64()
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rcx,[rbx+298]
call      qword ptr [7FF9F62BD320]; DotNetTips.Spargine.Extensions.StringExtensions.ToBase64(System.String)
mov       eax,[rax+8]
mov       rcx,[rbx+18]
mov       [rcx+38],eax
add       rsp,20
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.StringExtensions.ToBase64(System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,48
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
xor       eax,eax
mov       [rsp+40],rax
mov       rbx,rcx
test      rbx,rbx
je        near ptr M01_L03
mov       rcx,offset MT_System.CharEnumerator
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       dword ptr [rsi+10],0FFFFFFFF
lea       rcx,[rsi+8]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
mov       edx,[rsi+10]
inc       edx
mov       rcx,[rsi+8]
mov       ecx,[rcx+8]
cmp       edx,ecx
jge       short M01_L00
mov       [rsi+10],edx
mov       rcx,1DA4D40CF38
mov       rdi,[rcx]
lea       rdx,[rbx+0C]
mov       [rsp+40],rdx
mov       rbp,[rsp+40]
mov       r14d,[rbx+8]
mov       rdx,[rdi+10]
mov       r15d,r14d
test      rdx,rdx
je        near ptr M01_L04
jmp       short M01_L01
M01_L00
 
mov       [rsi+10],ecx
jmp       near ptr M01_L03
M01_L01
 
mov       rcx,offset MT_System.Text.EncoderReplacementFallback
cmp       [rdx],rcx
jne       near ptr M01_L04
mov       rdx,[rdx+8]
cmp       dword ptr [rdx+8],1
jne       near ptr M01_L04
cmp       dword ptr [rdx+8],0
jbe       near ptr M01_L06
cmp       word ptr [rdx+0C],7F
ja        near ptr M01_L04
mov       esi,r15d
cmp       r15d,r14d
jne       near ptr M01_L05
M01_L02
 
xor       edx,edx
mov       [rsp+40],rdx
movsxd    rdx,esi
mov       rcx,offset MT_System.Byte[]
call      CORINFO_HELP_NEWARR_1_VC
mov       r14,rax
mov       [rsp+20],r14
xor       r9d,r9d
mov       [rsp+28],r9d
mov       r9d,[rbx+8]
mov       rcx,rdi
mov       rdx,rbx
xor       r8d,r8d
call      qword ptr [7FF9F62D9DA8]; System.Text.ASCIIEncoding.GetBytes(System.String, Int32, Int32, Byte[], Int32)
lea       rcx,[r14+10]
mov       edx,[r14+8]
mov       [rsp+30],rcx
mov       [rsp+38],edx
lea       rcx,[rsp+30]
xor       edx,edx
call      qword ptr [7FF9F6154648]; System.Convert.ToBase64String(System.ReadOnlySpan`1, System.Base64FormattingOptions)
nop
add       rsp,48
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L03
 
mov       rax,21ADF280008
add       rsp,48
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L04
 
mov       edx,r14d
mov       rcx,rbp
call      qword ptr [7FF9F603C4C8]; System.Text.Ascii.GetIndexOfFirstNonAsciiChar_Vector(Char*, UIntPtr)
mov       r15d,eax
mov       esi,r15d
cmp       r15d,r14d
je        near ptr M01_L02
M01_L05
 
mov       rcx,rdi
mov       rdx,rbp
mov       r8d,r14d
mov       r9d,esi
call      qword ptr [7FF9F5DDC8A0]
add       esi,eax
jns       near ptr M01_L02
call      qword ptr [7FF9F5DDC7E0]
int       3
M01_L06
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.ToBase64()
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rcx,[rbx+298]
call      qword ptr [7FF9F62AD320]; DotNetTips.Spargine.Extensions.StringExtensions.ToBase64(System.String)
mov       eax,[rax+8]
mov       rcx,[rbx+18]
mov       [rcx+38],eax
add       rsp,20
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.StringExtensions.ToBase64(System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,48
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
xor       eax,eax
mov       [rsp+40],rax
mov       rbx,rcx
test      rbx,rbx
je        near ptr M01_L03
mov       rcx,offset MT_System.CharEnumerator
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       dword ptr [rsi+10],0FFFFFFFF
lea       rcx,[rsi+8]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
mov       edx,[rsi+10]
inc       edx
mov       rcx,[rsi+8]
mov       ecx,[rcx+8]
cmp       edx,ecx
jge       short M01_L00
mov       [rsi+10],edx
mov       rcx,1F00C00CF38
mov       rdi,[rcx]
lea       rdx,[rbx+0C]
mov       [rsp+40],rdx
mov       rbp,[rsp+40]
mov       r14d,[rbx+8]
mov       rdx,[rdi+10]
mov       r15d,r14d
test      rdx,rdx
je        near ptr M01_L04
jmp       short M01_L01
M01_L00
 
mov       [rsi+10],ecx
jmp       near ptr M01_L03
M01_L01
 
mov       rcx,offset MT_System.Text.EncoderReplacementFallback
cmp       [rdx],rcx
jne       near ptr M01_L04
mov       rdx,[rdx+8]
cmp       dword ptr [rdx+8],1
jne       near ptr M01_L04
cmp       dword ptr [rdx+8],0
jbe       near ptr M01_L06
cmp       word ptr [rdx+0C],7F
ja        near ptr M01_L04
mov       esi,r15d
cmp       r15d,r14d
jne       near ptr M01_L05
M01_L02
 
xor       edx,edx
mov       [rsp+40],rdx
movsxd    rdx,esi
mov       rcx,offset MT_System.Byte[]
call      CORINFO_HELP_NEWARR_1_VC
mov       r14,rax
mov       [rsp+20],r14
xor       r9d,r9d
mov       [rsp+28],r9d
mov       r9d,[rbx+8]
mov       rcx,rdi
mov       rdx,rbx
xor       r8d,r8d
call      qword ptr [7FF9F62C9DA8]; System.Text.ASCIIEncoding.GetBytes(System.String, Int32, Int32, Byte[], Int32)
lea       rcx,[r14+10]
mov       edx,[r14+8]
mov       [rsp+30],rcx
mov       [rsp+38],edx
lea       rcx,[rsp+30]
xor       edx,edx
call      qword ptr [7FF9F6144648]; System.Convert.ToBase64String(System.ReadOnlySpan`1, System.Base64FormattingOptions)
nop
add       rsp,48
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L03
 
mov       rax,2309DDF0008
add       rsp,48
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L04
 
mov       edx,r14d
mov       rcx,rbp
call      qword ptr [7FF9F602C4C8]; System.Text.Ascii.GetIndexOfFirstNonAsciiChar_Vector(Char*, UIntPtr)
mov       r15d,eax
mov       esi,r15d
cmp       r15d,r14d
je        near ptr M01_L02
M01_L05
 
mov       rcx,rdi
mov       rdx,rbp
mov       r8d,r14d
mov       r9d,esi
call      qword ptr [7FF9F5DCC8A0]
add       esi,eax
jns       near ptr M01_L02
call      qword ptr [7FF9F5DCC7E0]
int       3
M01_L06
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.ToBase64()
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rcx,[rbx+298]
call      qword ptr [7FF9F629D320]; DotNetTips.Spargine.Extensions.StringExtensions.ToBase64(System.String)
mov       eax,[rax+8]
mov       rcx,[rbx+18]
mov       [rcx+38],eax
add       rsp,20
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.StringExtensions.ToBase64(System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,48
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
xor       eax,eax
mov       [rsp+40],rax
mov       rbx,rcx
test      rbx,rbx
je        near ptr M01_L02
mov       rcx,offset MT_System.CharEnumerator
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       dword ptr [rsi+10],0FFFFFFFF
lea       rcx,[rsi+8]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
mov       eax,[rsi+10]
inc       eax
mov       rdx,[rsi+8]
mov       edx,[rdx+8]
cmp       eax,edx
jge       near ptr M01_L01
mov       [rsi+10],eax
mov       rdx,2023E80EF30
mov       rdi,[rdx]
lea       rax,[rbx+0C]
mov       [rsp+40],rax
mov       rbp,[rsp+40]
mov       r14d,[rbx+8]
mov       rdx,[rdi+10]
mov       r15d,r14d
test      rdx,rdx
je        near ptr M01_L03
mov       rcx,offset MT_System.Text.EncoderReplacementFallback
cmp       [rdx],rcx
jne       near ptr M01_L03
mov       rdx,[rdx+8]
cmp       dword ptr [rdx+8],1
jne       near ptr M01_L03
cmp       dword ptr [rdx+8],0
jbe       near ptr M01_L05
cmp       word ptr [rdx+0C],7F
ja        near ptr M01_L03
mov       esi,r15d
cmp       r15d,r14d
jne       near ptr M01_L04
M01_L00
 
xor       edx,edx
mov       [rsp+40],rdx
movsxd    rdx,esi
mov       rcx,offset MT_System.Byte[]
call      CORINFO_HELP_NEWARR_1_VC
mov       r14,rax
mov       [rsp+20],r14
xor       r9d,r9d
mov       [rsp+28],r9d
mov       r9d,[rbx+8]
mov       rcx,rdi
mov       rdx,rbx
xor       r8d,r8d
call      qword ptr [7FF9F62B9DA8]; System.Text.ASCIIEncoding.GetBytes(System.String, Int32, Int32, Byte[], Int32)
lea       rcx,[r14+10]
mov       edx,[r14+8]
mov       [rsp+30],rcx
mov       [rsp+38],edx
lea       rcx,[rsp+30]
xor       edx,edx
call      qword ptr [7FF9F6134648]; System.Convert.ToBase64String(System.ReadOnlySpan`1, System.Base64FormattingOptions)
nop
add       rsp,48
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L01
 
mov       [rsi+10],edx
M01_L02
 
mov       rax,242D06C0008
add       rsp,48
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L03
 
mov       edx,r14d
mov       rcx,rbp
call      qword ptr [7FF9F601C4C8]; System.Text.Ascii.GetIndexOfFirstNonAsciiChar_Vector(Char*, UIntPtr)
mov       r15d,eax
mov       esi,r15d
cmp       r15d,r14d
je        near ptr M01_L00
M01_L04
 
mov       rcx,rdi
mov       rdx,rbp
mov       r8d,r14d
mov       r9d,esi
call      qword ptr [7FF9F5DBC8A0]
add       esi,eax
jns       near ptr M01_L00
call      qword ptr [7FF9F5DBC7E0]
int       3
M01_L05
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.ToBase64()
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rcx,[rbx+298]
call      qword ptr [7FF9F62BD320]; DotNetTips.Spargine.Extensions.StringExtensions.ToBase64(System.String)
mov       eax,[rax+8]
mov       rcx,[rbx+18]
mov       [rcx+38],eax
add       rsp,20
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.StringExtensions.ToBase64(System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,48
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
xor       eax,eax
mov       [rsp+40],rax
mov       rbx,rcx
test      rbx,rbx
je        near ptr M01_L02
mov       rcx,offset MT_System.CharEnumerator
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       dword ptr [rsi+10],0FFFFFFFF
lea       rcx,[rsi+8]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
mov       eax,[rsi+10]
inc       eax
mov       rdx,[rsi+8]
mov       edx,[rdx+8]
cmp       eax,edx
jge       near ptr M01_L01
mov       [rsi+10],eax
mov       rdx,2849400EF30
mov       rdi,[rdx]
lea       rax,[rbx+0C]
mov       [rsp+40],rax
mov       rbp,[rsp+40]
mov       r14d,[rbx+8]
mov       rdx,[rdi+10]
mov       r15d,r14d
test      rdx,rdx
je        near ptr M01_L03
mov       rcx,offset MT_System.Text.EncoderReplacementFallback
cmp       [rdx],rcx
jne       near ptr M01_L03
mov       rdx,[rdx+8]
cmp       dword ptr [rdx+8],1
jne       near ptr M01_L03
cmp       dword ptr [rdx+8],0
jbe       near ptr M01_L05
cmp       word ptr [rdx+0C],7F
ja        near ptr M01_L03
mov       esi,r15d
cmp       r15d,r14d
jne       near ptr M01_L04
M01_L00
 
xor       edx,edx
mov       [rsp+40],rdx
movsxd    rdx,esi
mov       rcx,offset MT_System.Byte[]
call      CORINFO_HELP_NEWARR_1_VC
mov       r14,rax
mov       [rsp+20],r14
xor       r9d,r9d
mov       [rsp+28],r9d
mov       r9d,[rbx+8]
mov       rcx,rdi
mov       rdx,rbx
xor       r8d,r8d
call      qword ptr [7FF9F62D9DA8]; System.Text.ASCIIEncoding.GetBytes(System.String, Int32, Int32, Byte[], Int32)
lea       rcx,[r14+10]
mov       edx,[r14+8]
mov       [rsp+30],rcx
mov       [rsp+38],edx
lea       rcx,[rsp+30]
xor       edx,edx
call      qword ptr [7FF9F6154648]; System.Convert.ToBase64String(System.ReadOnlySpan`1, System.Base64FormattingOptions)
nop
add       rsp,48
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L01
 
mov       [rsi+10],edx
M01_L02
 
mov       rax,2C521F20008
add       rsp,48
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L03
 
mov       edx,r14d
mov       rcx,rbp
call      qword ptr [7FF9F603C4C8]; System.Text.Ascii.GetIndexOfFirstNonAsciiChar_Vector(Char*, UIntPtr)
mov       r15d,eax
mov       esi,r15d
cmp       r15d,r14d
je        near ptr M01_L00
M01_L04
 
mov       rcx,rdi
mov       rdx,rbp
mov       r8d,r14d
mov       r9d,esi
call      qword ptr [7FF9F5DDC8A0]
add       esi,eax
jns       near ptr M01_L00
call      qword ptr [7FF9F5DDC7E0]
int       3
M01_L05
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.ToBase64()
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rcx,[rbx+298]
call      qword ptr [7FF9F62BD320]; DotNetTips.Spargine.Extensions.StringExtensions.ToBase64(System.String)
mov       eax,[rax+8]
mov       rcx,[rbx+18]
mov       [rcx+38],eax
add       rsp,20
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.StringExtensions.ToBase64(System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,48
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
xor       eax,eax
mov       [rsp+40],rax
mov       rbx,rcx
test      rbx,rbx
je        near ptr M01_L03
mov       rcx,offset MT_System.CharEnumerator
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       dword ptr [rsi+10],0FFFFFFFF
lea       rcx,[rsi+8]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
mov       edx,[rsi+10]
inc       edx
mov       rcx,[rsi+8]
mov       ecx,[rcx+8]
cmp       edx,ecx
jge       short M01_L00
mov       [rsi+10],edx
mov       rcx,15D2600EF30
mov       rdi,[rcx]
lea       rdx,[rbx+0C]
mov       [rsp+40],rdx
mov       rbp,[rsp+40]
mov       r14d,[rbx+8]
mov       rdx,[rdi+10]
mov       r15d,r14d
test      rdx,rdx
je        near ptr M01_L04
jmp       short M01_L01
M01_L00
 
mov       [rsi+10],ecx
jmp       near ptr M01_L03
M01_L01
 
mov       rcx,offset MT_System.Text.EncoderReplacementFallback
cmp       [rdx],rcx
jne       near ptr M01_L04
mov       rdx,[rdx+8]
cmp       dword ptr [rdx+8],1
jne       near ptr M01_L04
cmp       dword ptr [rdx+8],0
jbe       near ptr M01_L06
cmp       word ptr [rdx+0C],7F
ja        near ptr M01_L04
mov       esi,r15d
cmp       r15d,r14d
jne       near ptr M01_L05
M01_L02
 
xor       edx,edx
mov       [rsp+40],rdx
movsxd    rdx,esi
mov       rcx,offset MT_System.Byte[]
call      CORINFO_HELP_NEWARR_1_VC
mov       r14,rax
mov       [rsp+20],r14
xor       r9d,r9d
mov       [rsp+28],r9d
mov       r9d,[rbx+8]
mov       rcx,rdi
mov       rdx,rbx
xor       r8d,r8d
call      qword ptr [7FF9F62D9DA8]; System.Text.ASCIIEncoding.GetBytes(System.String, Int32, Int32, Byte[], Int32)
lea       rcx,[r14+10]
mov       edx,[r14+8]
mov       [rsp+30],rcx
mov       [rsp+38],edx
lea       rcx,[rsp+30]
xor       edx,edx
call      qword ptr [7FF9F6154648]; System.Convert.ToBase64String(System.ReadOnlySpan`1, System.Base64FormattingOptions)
nop
add       rsp,48
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L03
 
mov       rax,19DB7FC0008
add       rsp,48
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L04
 
mov       edx,r14d
mov       rcx,rbp
call      qword ptr [7FF9F603C4C8]; System.Text.Ascii.GetIndexOfFirstNonAsciiChar_Vector(Char*, UIntPtr)
mov       r15d,eax
mov       esi,r15d
cmp       r15d,r14d
je        near ptr M01_L02
M01_L05
 
mov       rcx,rdi
mov       rdx,rbp
mov       r8d,r14d
mov       r9d,esi
call      qword ptr [7FF9F5DDC8A0]
add       esi,eax
jns       near ptr M01_L02
call      qword ptr [7FF9F5DDC7E0]
int       3
M01_L06
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.ToBase64()
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rcx,[rbx+298]
call      qword ptr [7FF9F62CD320]; DotNetTips.Spargine.Extensions.StringExtensions.ToBase64(System.String)
mov       eax,[rax+8]
mov       rcx,[rbx+18]
mov       [rcx+38],eax
add       rsp,20
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.StringExtensions.ToBase64(System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,48
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
xor       eax,eax
mov       [rsp+40],rax
mov       rbx,rcx
test      rbx,rbx
je        near ptr M01_L03
mov       rcx,offset MT_System.CharEnumerator
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       dword ptr [rsi+10],0FFFFFFFF
lea       rcx,[rsi+8]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
mov       edx,[rsi+10]
inc       edx
mov       rcx,[rsi+8]
mov       ecx,[rcx+8]
cmp       edx,ecx
jge       short M01_L00
mov       [rsi+10],edx
jmp       short M01_L01
M01_L00
 
mov       [rsi+10],ecx
jmp       near ptr M01_L03
M01_L01
 
mov       rdx,22E3D40EF30
mov       rsi,[rdx]
lea       rdx,[rbx+0C]
mov       [rsp+40],rdx
mov       rdi,[rsp+40]
mov       ebp,[rbx+8]
mov       rdx,[rsi+10]
mov       r14d,ebp
test      rdx,rdx
je        near ptr M01_L04
mov       rcx,offset MT_System.Text.EncoderReplacementFallback
cmp       [rdx],rcx
jne       near ptr M01_L04
mov       rdx,[rdx+8]
cmp       dword ptr [rdx+8],1
jne       near ptr M01_L04
cmp       dword ptr [rdx+8],0
jbe       near ptr M01_L06
cmp       word ptr [rdx+0C],7F
ja        near ptr M01_L04
mov       r15d,r14d
cmp       r14d,ebp
jne       near ptr M01_L05
M01_L02
 
xor       edx,edx
mov       [rsp+40],rdx
movsxd    rdx,r15d
mov       rcx,offset MT_System.Byte[]
call      CORINFO_HELP_NEWARR_1_VC
mov       rbp,rax
mov       [rsp+20],rbp
xor       r9d,r9d
mov       [rsp+28],r9d
mov       r9d,[rbx+8]
mov       rcx,rsi
mov       rdx,rbx
xor       r8d,r8d
call      qword ptr [7FF9F62E9DA8]; System.Text.ASCIIEncoding.GetBytes(System.String, Int32, Int32, Byte[], Int32)
lea       rcx,[rbp+10]
mov       edx,[rbp+8]
mov       [rsp+30],rcx
mov       [rsp+38],edx
lea       rcx,[rsp+30]
xor       edx,edx
call      qword ptr [7FF9F6164648]; System.Convert.ToBase64String(System.ReadOnlySpan`1, System.Base64FormattingOptions)
nop
add       rsp,48
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L03
 
mov       rax,26ECF260008
add       rsp,48
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L04
 
mov       edx,ebp
mov       rcx,rdi
call      qword ptr [7FF9F604C4C8]; System.Text.Ascii.GetIndexOfFirstNonAsciiChar_Vector(Char*, UIntPtr)
mov       r14d,eax
mov       r15d,r14d
cmp       r14d,ebp
je        near ptr M01_L02
M01_L05
 
mov       rcx,rsi
mov       rdx,rdi
mov       r8d,ebp
mov       r9d,r15d
call      qword ptr [7FF9F5DEC8A0]
add       r15d,eax
jns       near ptr M01_L02
call      qword ptr [7FF9F5DEC7E0]
int       3
M01_L06
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.ToBase64()
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rcx,[rbx+298]
call      qword ptr [7FF9F62AD320]; DotNetTips.Spargine.Extensions.StringExtensions.ToBase64(System.String)
mov       eax,[rax+8]
mov       rcx,[rbx+18]
mov       [rcx+38],eax
add       rsp,20
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.StringExtensions.ToBase64(System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,48
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
xor       eax,eax
mov       [rsp+40],rax
mov       rbx,rcx
test      rbx,rbx
je        near ptr M01_L03
mov       rcx,offset MT_System.CharEnumerator
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       dword ptr [rsi+10],0FFFFFFFF
lea       rcx,[rsi+8]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
mov       edx,[rsi+10]
inc       edx
mov       rcx,[rsi+8]
mov       ecx,[rcx+8]
cmp       edx,ecx
jge       short M01_L00
mov       [rsi+10],edx
mov       rcx,25F4040EF30
mov       rdi,[rcx]
lea       rdx,[rbx+0C]
mov       [rsp+40],rdx
mov       rbp,[rsp+40]
mov       r14d,[rbx+8]
mov       rdx,[rdi+10]
mov       r15d,r14d
test      rdx,rdx
je        near ptr M01_L04
jmp       short M01_L01
M01_L00
 
mov       [rsi+10],ecx
jmp       near ptr M01_L03
M01_L01
 
mov       rcx,offset MT_System.Text.EncoderReplacementFallback
cmp       [rdx],rcx
jne       near ptr M01_L04
mov       rdx,[rdx+8]
cmp       dword ptr [rdx+8],1
jne       near ptr M01_L04
cmp       dword ptr [rdx+8],0
jbe       near ptr M01_L06
cmp       word ptr [rdx+0C],7F
ja        near ptr M01_L04
mov       esi,r15d
cmp       r15d,r14d
jne       near ptr M01_L05
M01_L02
 
xor       edx,edx
mov       [rsp+40],rdx
movsxd    rdx,esi
mov       rcx,offset MT_System.Byte[]
call      CORINFO_HELP_NEWARR_1_VC
mov       r14,rax
mov       [rsp+20],r14
xor       r9d,r9d
mov       [rsp+28],r9d
mov       r9d,[rbx+8]
mov       rcx,rdi
mov       rdx,rbx
xor       r8d,r8d
call      qword ptr [7FF9F62C9DA8]; System.Text.ASCIIEncoding.GetBytes(System.String, Int32, Int32, Byte[], Int32)
lea       rcx,[r14+10]
mov       edx,[r14+8]
mov       [rsp+30],rcx
mov       [rsp+38],edx
lea       rcx,[rsp+30]
xor       edx,edx
call      qword ptr [7FF9F6144648]; System.Convert.ToBase64String(System.ReadOnlySpan`1, System.Base64FormattingOptions)
nop
add       rsp,48
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L03
 
mov       rax,29FD20B0008
add       rsp,48
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L04
 
mov       edx,r14d
mov       rcx,rbp
call      qword ptr [7FF9F602C4C8]; System.Text.Ascii.GetIndexOfFirstNonAsciiChar_Vector(Char*, UIntPtr)
mov       r15d,eax
mov       esi,r15d
cmp       r15d,r14d
je        near ptr M01_L02
M01_L05
 
mov       rcx,rdi
mov       rdx,rbp
mov       r8d,r14d
mov       r9d,esi
call      qword ptr [7FF9F5DCC8A0]
add       esi,eax
jns       near ptr M01_L02
call      qword ptr [7FF9F5DCC7E0]
int       3
M01_L06
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.ToBase64ByteSpan()
push      rdi
push      rsi
push      rbx
sub       rsp,50
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
mov       rbx,rcx
mov       rcx,[rbx+298]
test      rcx,rcx
je        short M00_L00
mov       eax,[rcx+8]
xor       edx,edx
test      eax,eax
sete      dl
test      edx,edx
sete      dl
movzx     edx,dl
test      eax,eax
jne       short M00_L01
jmp       short M00_L01
M00_L00
 
xor       edx,edx
M00_L01
 
test      edx,edx
je        near ptr M00_L04
cmp       [rcx],ecx
call      qword ptr [7FF9F5DB7318]; System.String.Trim()
mov       rsi,rax
imul      edx,[rsi+8],3
jo        short M00_L03
mov       ecx,edx
sar       ecx,1F
and       ecx,3
add       edx,ecx
sar       edx,2
movsxd    rdx,edx
mov       rcx,offset MT_System.Byte[]
call      CORINFO_HELP_NEWARR_1_VC
lea       rcx,[rax+10]
mov       edi,[rax+8]
mov       edx,edi
lea       r8,[rsi+0C]
mov       eax,[rsi+8]
mov       [rsp+38],r8
mov       [rsp+40],eax
mov       [rsp+28],rcx
mov       [rsp+30],edx
lea       rcx,[rsp+38]
lea       rdx,[rsp+28]
lea       r8,[rsp+48]
call      qword ptr [7FF9F6134720]; System.Convert.TryFromBase64Chars(System.ReadOnlySpan`1, System.Span`1, Int32 ByRef)
test      eax,eax
jne       short M00_L06
xor       esi,esi
M00_L02
 
mov       rax,[rbx+18]
mov       [rax+38],esi
add       rsp,50
pop       rbx
pop       rsi
pop       rdi
ret
M00_L03
 
call      CORINFO_HELP_OVERFLOW
M00_L04
 
call      qword ptr [7FF9F6335368]
mov       rdi,rax
test      rdi,rdi
jne       short M00_L05
call      qword ptr [7FF9F63350B0]
mov       rdi,rax
M00_L05
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,2864A778468
mov       r8,rdi
call      qword ptr [7FF9F6046670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L06
 
mov       esi,[rsp+48]
cmp       esi,edi
jbe       short M00_L07
call      qword ptr [7FF9F601E9D0]
int       3
M00_L07
 
jmp       short M00_L02
 
System.String.Trim()
push      rsi
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,[rbx+8]
test      esi,esi
je        short M01_L03
movzx     ecx,word ptr [rbx+0C]
cmp       ecx,100
jae       short M01_L00
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       short M01_L04
jmp       short M01_L01
M01_L00
 
call      qword ptr [7FF9F68AEBE0]
test      eax,eax
jne       short M01_L04
M01_L01
 
dec       esi
mov       ecx,esi
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M01_L02
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       short M01_L04
jmp       short M01_L03
M01_L02
 
call      qword ptr [7FF9F68AEBE0]
test      eax,eax
jne       short M01_L04
M01_L03
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rsi
ret
M01_L04
 
mov       rcx,rbx
mov       edx,3
call      qword ptr [7FF9F5DB73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
nop
add       rsp,28
pop       rbx
pop       rsi
ret
 
System.Convert.TryFromBase64Chars(System.ReadOnlySpan`1, System.Span`1, Int32 ByRef)
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,78
xor       eax,eax
mov       [rsp+30],rax
mov       rax,18AF0A8D876A
mov       [rsp+70],rax
mov       rbx,r8
mov       rsi,rdx
mov       rdi,rcx
mov       rbp,[rdi]
mov       r14d,[rdi+8]
mov       r15,[rsi]
mov       r13d,[rsi+8]
lea       r12,[rsp+28]
mov       dword ptr [rsp+44],4
xor       r8d,r8d
mov       [rbx],r8d
test      r14d,r14d
je        near ptr M02_L13
M02_L00
 
mov       [rdi],rbp
mov       [rdi+8],r14d
mov       [rsi],r15
mov       [rsi+8],r13d
lea       r8,[rsp+68]
lea       r9,[rsp+60]
mov       rcx,rdi
mov       rdx,rsi
call      qword ptr [7FF9F60DE628]; System.Convert.TryDecodeFromUtf16(System.ReadOnlySpan`1, System.Span`1, Int32 ByRef, Int32 ByRef)
mov       edx,[rsp+60]
add       [rbx],edx
test      eax,eax
jne       near ptr M02_L13
mov       eax,[rsp+68]
cmp       eax,r14d
ja        near ptr M02_L18
mov       edx,eax
lea       rbp,[rbp+rdx*2]
sub       r14d,eax
mov       eax,[rsp+60]
cmp       eax,r13d
ja        near ptr M02_L18
mov       edx,eax
add       r15,rdx
sub       r13d,eax
test      r14d,r14d
je        near ptr M02_L21
movzx     eax,word ptr [rbp]
cmp       eax,20
je        short M02_L01
cmp       eax,9
je        short M02_L01
cmp       eax,0D
je        short M02_L01
cmp       eax,0A
je        short M02_L01
mov       rax,r12
mov       r11d,[rsp+44]
mov       r10d,r11d
xor       ecx,ecx
xor       r9d,r9d
test      r14d,r14d
jle       near ptr M02_L17
jmp       near ptr M02_L05
nop
M02_L01
 
mov       r10d,1
cmp       r14d,1
je        short M02_L03
M02_L02
 
cmp       r10d,r14d
jae       near ptr M02_L21
mov       eax,r10d
movzx     eax,word ptr [rbp+rax*2]
cmp       eax,20
je        near ptr M02_L15
cmp       eax,9
je        near ptr M02_L15
cmp       eax,0D
je        near ptr M02_L15
cmp       eax,0A
je        near ptr M02_L15
M02_L03
 
cmp       r10d,r14d
ja        near ptr M02_L18
mov       eax,r10d
lea       rbp,[rbp+rax*2]
sub       r14d,r10d
mov       ecx,[rsp+60]
mov       edx,55555556
mov       eax,edx
imul      dword ptr [rsp+60]
mov       r9d,edx
shr       r9d,1F
add       r9d,edx
lea       r9d,[r9+r9*2]
sub       ecx,r9d
jne       near ptr M02_L16
M02_L04
 
test      r14d,r14d
je        near ptr M02_L13
jmp       near ptr M02_L00
M02_L05
 
mov       r8d,r9d
movzx     r8d,word ptr [rbp+r8*2]
cmp       r8d,20
je        short M02_L06
cmp       r8d,9
je        short M02_L06
cmp       r8d,0D
je        short M02_L06
cmp       r8d,0A
je        short M02_L06
lea       edx,[rcx+1]
cmp       ecx,r10d
jae       near ptr M02_L21
mov       ecx,ecx
mov       [rax+rcx*2],r8w
cmp       edx,r10d
mov       ecx,edx
je        short M02_L07
M02_L06
 
inc       r9d
cmp       r9d,r14d
jge       near ptr M02_L17
jmp       short M02_L05
M02_L07
 
lea       eax,[r9+1]
mov       [rsp+5C],eax
M02_L08
 
test      cl,3
jne       near ptr M02_L09
cmp       ecx,r11d
ja        near ptr M02_L18
mov       r11d,ecx
mov       [rsi],r15
mov       [rsi+8],r13d
mov       [rsp+30],r12
mov       [rsp+44],r11d
mov       [rsp+38],r11d
lea       rcx,[rsp+30]
lea       r9,[rsp+48]
lea       r8,[rsp+50]
mov       rdx,rsi
call      qword ptr [7FF9F60DE628]; System.Convert.TryDecodeFromUtf16(System.ReadOnlySpan`1, System.Span`1, Int32 ByRef, Int32 ByRef)
test      eax,eax
je        short M02_L09
mov       eax,[rsp+48]
add       [rbx],eax
mov       eax,[rsp+5C]
cmp       eax,r14d
ja        near ptr M02_L18
mov       edx,eax
lea       rbp,[rbp+rdx*2]
sub       r14d,eax
mov       eax,[rsp+48]
cmp       eax,r13d
ja        near ptr M02_L18
mov       edx,eax
add       rdx,r15
mov       r15,rdx
sub       r13d,eax
mov       ecx,[rsp+48]
mov       edx,55555556
mov       eax,edx
imul      dword ptr [rsp+48]
mov       eax,edx
shr       eax,1F
add       eax,edx
lea       eax,[rax+rax*2]
sub       ecx,eax
jne       near ptr M02_L19
jmp       near ptr M02_L04
M02_L09
 
xor       eax,eax
mov       [rbx],eax
mov       rcx,18AF0A8D876A
cmp       [rsp+70],rcx
je        short M02_L10
call      CORINFO_HELP_FAIL_FAST
M02_L10
 
nop
add       rsp,78
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M02_L11
 
inc       eax
M02_L12
 
cmp       eax,r14d
jl        short M02_L20
M02_L13
 
mov       eax,1
mov       rcx,18AF0A8D876A
cmp       [rsp+70],rcx
je        short M02_L14
call      CORINFO_HELP_FAIL_FAST
M02_L14
 
nop
add       rsp,78
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M02_L15
 
inc       r10d
cmp       r10d,r14d
jne       near ptr M02_L02
jmp       near ptr M02_L03
M02_L16
 
test      r14d,r14d
je        near ptr M02_L04
jmp       short M02_L09
M02_L17
 
mov       eax,r14d
mov       [rsp+5C],eax
jmp       near ptr M02_L08
M02_L18
 
call      qword ptr [7FF9F601E9D0]
int       3
M02_L19
 
xor       eax,eax
jmp       short M02_L12
M02_L20
 
cmp       eax,r14d
jae       short M02_L21
mov       ecx,eax
movzx     ecx,word ptr [rbp+rcx*2]
cmp       ecx,20
je        short M02_L11
cmp       ecx,9
je        short M02_L11
cmp       ecx,0D
je        near ptr M02_L11
cmp       ecx,0A
sete      cl
movzx     ecx,cl
test      ecx,ecx
jne       near ptr M02_L11
jmp       near ptr M02_L09
M02_L21
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.ToBase64ByteSpan()
push      rdi
push      rsi
push      rbx
sub       rsp,50
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
mov       rbx,rcx
mov       rcx,[rbx+298]
test      rcx,rcx
je        short M00_L00
mov       eax,[rcx+8]
xor       edx,edx
test      eax,eax
sete      dl
test      edx,edx
sete      dl
movzx     edx,dl
test      eax,eax
jne       short M00_L01
jmp       short M00_L01
M00_L00
 
xor       edx,edx
M00_L01
 
test      edx,edx
je        near ptr M00_L04
cmp       [rcx],ecx
call      qword ptr [7FF9F5DB7318]; System.String.Trim()
mov       rsi,rax
imul      edx,[rsi+8],3
jo        short M00_L03
mov       ecx,edx
sar       ecx,1F
and       ecx,3
add       edx,ecx
sar       edx,2
movsxd    rdx,edx
mov       rcx,offset MT_System.Byte[]
call      CORINFO_HELP_NEWARR_1_VC
lea       rcx,[rax+10]
mov       edi,[rax+8]
mov       edx,edi
lea       r8,[rsi+0C]
mov       eax,[rsi+8]
mov       [rsp+38],r8
mov       [rsp+40],eax
mov       [rsp+28],rcx
mov       [rsp+30],edx
lea       rcx,[rsp+38]
lea       rdx,[rsp+28]
lea       r8,[rsp+48]
call      qword ptr [7FF9F6134720]; System.Convert.TryFromBase64Chars(System.ReadOnlySpan`1, System.Span`1, Int32 ByRef)
test      eax,eax
jne       short M00_L06
xor       esi,esi
M00_L02
 
mov       rax,[rbx+18]
mov       [rax+38],esi
add       rsp,50
pop       rbx
pop       rsi
pop       rdi
ret
M00_L03
 
call      CORINFO_HELP_OVERFLOW
M00_L04
 
call      qword ptr [7FF9F6335368]
mov       rdi,rax
test      rdi,rdi
jne       short M00_L05
call      qword ptr [7FF9F63350B0]
mov       rdi,rax
M00_L05
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,26B5E438468
mov       r8,rdi
call      qword ptr [7FF9F6046670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L06
 
mov       esi,[rsp+48]
cmp       esi,edi
jbe       short M00_L07
call      qword ptr [7FF9F601E9D0]
int       3
M00_L07
 
jmp       short M00_L02
 
System.String.Trim()
push      rsi
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,[rbx+8]
test      esi,esi
je        short M01_L03
movzx     ecx,word ptr [rbx+0C]
cmp       ecx,100
jae       short M01_L00
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       short M01_L04
jmp       short M01_L01
M01_L00
 
call      qword ptr [7FF9F68AEBE0]
test      eax,eax
jne       short M01_L04
M01_L01
 
dec       esi
mov       ecx,esi
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M01_L02
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       short M01_L04
jmp       short M01_L03
M01_L02
 
call      qword ptr [7FF9F68AEBE0]
test      eax,eax
jne       short M01_L04
M01_L03
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rsi
ret
M01_L04
 
mov       rcx,rbx
mov       edx,3
call      qword ptr [7FF9F5DB73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
nop
add       rsp,28
pop       rbx
pop       rsi
ret
 
System.Convert.TryFromBase64Chars(System.ReadOnlySpan`1, System.Span`1, Int32 ByRef)
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,78
xor       eax,eax
mov       [rsp+30],rax
mov       rax,0A2B7D2CBD808
mov       [rsp+70],rax
mov       rbx,r8
mov       rsi,rdx
mov       rdi,rcx
mov       rbp,[rdi]
mov       r14d,[rdi+8]
mov       r15,[rsi]
mov       r13d,[rsi+8]
lea       r12,[rsp+28]
mov       dword ptr [rsp+44],4
xor       r8d,r8d
mov       [rbx],r8d
test      r14d,r14d
je        near ptr M02_L13
M02_L00
 
mov       [rdi],rbp
mov       [rdi+8],r14d
mov       [rsi],r15
mov       [rsi+8],r13d
lea       r8,[rsp+68]
lea       r9,[rsp+60]
mov       rcx,rdi
mov       rdx,rsi
call      qword ptr [7FF9F60DE628]; System.Convert.TryDecodeFromUtf16(System.ReadOnlySpan`1, System.Span`1, Int32 ByRef, Int32 ByRef)
mov       edx,[rsp+60]
add       [rbx],edx
test      eax,eax
jne       near ptr M02_L13
mov       eax,[rsp+68]
cmp       eax,r14d
ja        near ptr M02_L18
mov       edx,eax
lea       rbp,[rbp+rdx*2]
sub       r14d,eax
mov       eax,[rsp+60]
cmp       eax,r13d
ja        near ptr M02_L18
mov       edx,eax
add       r15,rdx
sub       r13d,eax
test      r14d,r14d
je        near ptr M02_L21
movzx     eax,word ptr [rbp]
cmp       eax,20
je        short M02_L01
cmp       eax,9
je        short M02_L01
cmp       eax,0D
je        short M02_L01
cmp       eax,0A
je        short M02_L01
mov       rax,r12
mov       r11d,[rsp+44]
mov       r10d,r11d
xor       ecx,ecx
xor       r9d,r9d
test      r14d,r14d
jle       near ptr M02_L17
jmp       near ptr M02_L05
nop
M02_L01
 
mov       r10d,1
cmp       r14d,1
je        short M02_L03
M02_L02
 
cmp       r10d,r14d
jae       near ptr M02_L21
mov       eax,r10d
movzx     eax,word ptr [rbp+rax*2]
cmp       eax,20
je        near ptr M02_L15
cmp       eax,9
je        near ptr M02_L15
cmp       eax,0D
je        near ptr M02_L15
cmp       eax,0A
je        near ptr M02_L15
M02_L03
 
cmp       r10d,r14d
ja        near ptr M02_L18
mov       eax,r10d
lea       rbp,[rbp+rax*2]
sub       r14d,r10d
mov       ecx,[rsp+60]
mov       edx,55555556
mov       eax,edx
imul      dword ptr [rsp+60]
mov       r9d,edx
shr       r9d,1F
add       r9d,edx
lea       r9d,[r9+r9*2]
sub       ecx,r9d
jne       near ptr M02_L16
M02_L04
 
test      r14d,r14d
je        near ptr M02_L13
jmp       near ptr M02_L00
M02_L05
 
mov       r8d,r9d
movzx     r8d,word ptr [rbp+r8*2]
cmp       r8d,20
je        short M02_L06
cmp       r8d,9
je        short M02_L06
cmp       r8d,0D
je        short M02_L06
cmp       r8d,0A
je        short M02_L06
lea       edx,[rcx+1]
cmp       ecx,r10d
jae       near ptr M02_L21
mov       ecx,ecx
mov       [rax+rcx*2],r8w
cmp       edx,r10d
mov       ecx,edx
je        short M02_L07
M02_L06
 
inc       r9d
cmp       r9d,r14d
jge       near ptr M02_L17
jmp       short M02_L05
M02_L07
 
lea       eax,[r9+1]
mov       [rsp+5C],eax
M02_L08
 
test      cl,3
jne       near ptr M02_L09
cmp       ecx,r11d
ja        near ptr M02_L18
mov       r11d,ecx
mov       [rsi],r15
mov       [rsi+8],r13d
mov       [rsp+30],r12
mov       [rsp+44],r11d
mov       [rsp+38],r11d
lea       rcx,[rsp+30]
lea       r9,[rsp+48]
lea       r8,[rsp+50]
mov       rdx,rsi
call      qword ptr [7FF9F60DE628]; System.Convert.TryDecodeFromUtf16(System.ReadOnlySpan`1, System.Span`1, Int32 ByRef, Int32 ByRef)
test      eax,eax
je        short M02_L09
mov       eax,[rsp+48]
add       [rbx],eax
mov       eax,[rsp+5C]
cmp       eax,r14d
ja        near ptr M02_L18
mov       edx,eax
lea       rbp,[rbp+rdx*2]
sub       r14d,eax
mov       eax,[rsp+48]
cmp       eax,r13d
ja        near ptr M02_L18
mov       edx,eax
add       rdx,r15
mov       r15,rdx
sub       r13d,eax
mov       ecx,[rsp+48]
mov       edx,55555556
mov       eax,edx
imul      dword ptr [rsp+48]
mov       eax,edx
shr       eax,1F
add       eax,edx
lea       eax,[rax+rax*2]
sub       ecx,eax
jne       near ptr M02_L19
jmp       near ptr M02_L04
M02_L09
 
xor       eax,eax
mov       [rbx],eax
mov       rcx,0A2B7D2CBD808
cmp       [rsp+70],rcx
je        short M02_L10
call      CORINFO_HELP_FAIL_FAST
M02_L10
 
nop
add       rsp,78
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M02_L11
 
inc       eax
M02_L12
 
cmp       eax,r14d
jl        short M02_L20
M02_L13
 
mov       eax,1
mov       rcx,0A2B7D2CBD808
cmp       [rsp+70],rcx
je        short M02_L14
call      CORINFO_HELP_FAIL_FAST
M02_L14
 
nop
add       rsp,78
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M02_L15
 
inc       r10d
cmp       r10d,r14d
jne       near ptr M02_L02
jmp       near ptr M02_L03
M02_L16
 
test      r14d,r14d
je        near ptr M02_L04
jmp       short M02_L09
M02_L17
 
mov       eax,r14d
mov       [rsp+5C],eax
jmp       near ptr M02_L08
M02_L18
 
call      qword ptr [7FF9F601E9D0]
int       3
M02_L19
 
xor       eax,eax
jmp       short M02_L12
M02_L20
 
cmp       eax,r14d
jae       short M02_L21
mov       ecx,eax
movzx     ecx,word ptr [rbp+rcx*2]
cmp       ecx,20
je        short M02_L11
cmp       ecx,9
je        short M02_L11
cmp       ecx,0D
je        near ptr M02_L11
cmp       ecx,0A
sete      cl
movzx     ecx,cl
test      ecx,ecx
jne       near ptr M02_L11
jmp       near ptr M02_L09
M02_L21
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.ToBase64ByteSpan()
push      rdi
push      rsi
push      rbx
sub       rsp,50
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
mov       rbx,rcx
mov       rcx,[rbx+298]
test      rcx,rcx
je        short M00_L00
mov       eax,[rcx+8]
xor       edx,edx
test      eax,eax
sete      dl
test      edx,edx
sete      dl
movzx     edx,dl
test      eax,eax
jne       short M00_L01
jmp       short M00_L01
M00_L00
 
xor       edx,edx
M00_L01
 
test      edx,edx
je        near ptr M00_L04
cmp       [rcx],ecx
call      qword ptr [7FF9F5DD7318]; System.String.Trim()
mov       rsi,rax
imul      edx,[rsi+8],3
jo        short M00_L03
mov       ecx,edx
sar       ecx,1F
and       ecx,3
add       edx,ecx
sar       edx,2
movsxd    rdx,edx
mov       rcx,offset MT_System.Byte[]
call      CORINFO_HELP_NEWARR_1_VC
lea       rcx,[rax+10]
mov       edi,[rax+8]
mov       edx,edi
lea       r8,[rsi+0C]
mov       eax,[rsi+8]
mov       [rsp+38],r8
mov       [rsp+40],eax
mov       [rsp+28],rcx
mov       [rsp+30],edx
lea       rcx,[rsp+38]
lea       rdx,[rsp+28]
lea       r8,[rsp+48]
call      qword ptr [7FF9F6154720]; System.Convert.TryFromBase64Chars(System.ReadOnlySpan`1, System.Span`1, Int32 ByRef)
test      eax,eax
jne       short M00_L06
xor       esi,esi
M00_L02
 
mov       rax,[rbx+18]
mov       [rax+38],esi
add       rsp,50
pop       rbx
pop       rsi
pop       rdi
ret
M00_L03
 
call      CORINFO_HELP_OVERFLOW
M00_L04
 
call      qword ptr [7FF9F6355368]
mov       rdi,rax
test      rdi,rdi
jne       short M00_L05
call      qword ptr [7FF9F63550B0]
mov       rdi,rax
M00_L05
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,24329528468
mov       r8,rdi
call      qword ptr [7FF9F6066670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L06
 
mov       esi,[rsp+48]
cmp       esi,edi
jbe       short M00_L07
call      qword ptr [7FF9F603E9D0]
int       3
M00_L07
 
jmp       short M00_L02
 
System.String.Trim()
push      rsi
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,[rbx+8]
test      esi,esi
je        short M01_L03
movzx     ecx,word ptr [rbx+0C]
cmp       ecx,100
jae       short M01_L00
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       short M01_L04
jmp       short M01_L01
M01_L00
 
call      qword ptr [7FF9F672E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       short M01_L04
M01_L01
 
dec       esi
mov       ecx,esi
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M01_L02
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       short M01_L04
jmp       short M01_L03
M01_L02
 
call      qword ptr [7FF9F672E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       short M01_L04
M01_L03
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rsi
ret
M01_L04
 
mov       rcx,rbx
mov       edx,3
call      qword ptr [7FF9F5DD73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
nop
add       rsp,28
pop       rbx
pop       rsi
ret
 
System.Convert.TryFromBase64Chars(System.ReadOnlySpan`1, System.Span`1, Int32 ByRef)
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,78
xor       eax,eax
mov       [rsp+30],rax
mov       rax,0C63BA16568C6
mov       [rsp+70],rax
mov       rbx,r8
mov       rsi,rdx
mov       rdi,rcx
mov       rbp,[rdi]
mov       r14d,[rdi+8]
mov       r15,[rsi]
mov       r13d,[rsi+8]
lea       r12,[rsp+28]
mov       dword ptr [rsp+44],4
xor       r8d,r8d
mov       [rbx],r8d
test      r14d,r14d
je        near ptr M02_L13
M02_L00
 
mov       [rdi],rbp
mov       [rdi+8],r14d
mov       [rsi],r15
mov       [rsi+8],r13d
lea       r8,[rsp+68]
lea       r9,[rsp+60]
mov       rcx,rdi
mov       rdx,rsi
call      qword ptr [7FF9F60FE628]; System.Convert.TryDecodeFromUtf16(System.ReadOnlySpan`1, System.Span`1, Int32 ByRef, Int32 ByRef)
mov       edx,[rsp+60]
add       [rbx],edx
test      eax,eax
jne       near ptr M02_L13
mov       eax,[rsp+68]
cmp       eax,r14d
ja        near ptr M02_L18
mov       edx,eax
lea       rbp,[rbp+rdx*2]
sub       r14d,eax
mov       eax,[rsp+60]
cmp       eax,r13d
ja        near ptr M02_L18
mov       edx,eax
add       r15,rdx
sub       r13d,eax
test      r14d,r14d
je        near ptr M02_L21
movzx     eax,word ptr [rbp]
cmp       eax,20
je        short M02_L01
cmp       eax,9
je        short M02_L01
cmp       eax,0D
je        short M02_L01
cmp       eax,0A
je        short M02_L01
mov       rax,r12
mov       r11d,[rsp+44]
mov       r10d,r11d
xor       ecx,ecx
xor       r9d,r9d
test      r14d,r14d
jle       near ptr M02_L17
jmp       near ptr M02_L05
nop
M02_L01
 
mov       r10d,1
cmp       r14d,1
je        short M02_L03
M02_L02
 
cmp       r10d,r14d
jae       near ptr M02_L21
mov       eax,r10d
movzx     eax,word ptr [rbp+rax*2]
cmp       eax,20
je        near ptr M02_L15
cmp       eax,9
je        near ptr M02_L15
cmp       eax,0D
je        near ptr M02_L15
cmp       eax,0A
je        near ptr M02_L15
M02_L03
 
cmp       r10d,r14d
ja        near ptr M02_L18
mov       eax,r10d
lea       rbp,[rbp+rax*2]
sub       r14d,r10d
mov       ecx,[rsp+60]
mov       edx,55555556
mov       eax,edx
imul      dword ptr [rsp+60]
mov       r9d,edx
shr       r9d,1F
add       r9d,edx
lea       r9d,[r9+r9*2]
sub       ecx,r9d
jne       near ptr M02_L16
M02_L04
 
test      r14d,r14d
je        near ptr M02_L13
jmp       near ptr M02_L00
M02_L05
 
mov       r8d,r9d
movzx     r8d,word ptr [rbp+r8*2]
cmp       r8d,20
je        short M02_L06
cmp       r8d,9
je        short M02_L06
cmp       r8d,0D
je        short M02_L06
cmp       r8d,0A
je        short M02_L06
lea       edx,[rcx+1]
cmp       ecx,r10d
jae       near ptr M02_L21
mov       ecx,ecx
mov       [rax+rcx*2],r8w
cmp       edx,r10d
mov       ecx,edx
je        short M02_L07
M02_L06
 
inc       r9d
cmp       r9d,r14d
jge       near ptr M02_L17
jmp       short M02_L05
M02_L07
 
lea       eax,[r9+1]
mov       [rsp+5C],eax
M02_L08
 
test      cl,3
jne       near ptr M02_L09
cmp       ecx,r11d
ja        near ptr M02_L18
mov       r11d,ecx
mov       [rsi],r15
mov       [rsi+8],r13d
mov       [rsp+30],r12
mov       [rsp+44],r11d
mov       [rsp+38],r11d
lea       rcx,[rsp+30]
lea       r9,[rsp+48]
lea       r8,[rsp+50]
mov       rdx,rsi
call      qword ptr [7FF9F60FE628]; System.Convert.TryDecodeFromUtf16(System.ReadOnlySpan`1, System.Span`1, Int32 ByRef, Int32 ByRef)
test      eax,eax
je        short M02_L09
mov       eax,[rsp+48]
add       [rbx],eax
mov       eax,[rsp+5C]
cmp       eax,r14d
ja        near ptr M02_L18
mov       edx,eax
lea       rbp,[rbp+rdx*2]
sub       r14d,eax
mov       eax,[rsp+48]
cmp       eax,r13d
ja        near ptr M02_L18
mov       edx,eax
add       rdx,r15
mov       r15,rdx
sub       r13d,eax
mov       ecx,[rsp+48]
mov       edx,55555556
mov       eax,edx
imul      dword ptr [rsp+48]
mov       eax,edx
shr       eax,1F
add       eax,edx
lea       eax,[rax+rax*2]
sub       ecx,eax
jne       near ptr M02_L19
jmp       near ptr M02_L04
M02_L09
 
xor       eax,eax
mov       [rbx],eax
mov       rcx,0C63BA16568C6
cmp       [rsp+70],rcx
je        short M02_L10
call      CORINFO_HELP_FAIL_FAST
M02_L10
 
nop
add       rsp,78
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M02_L11
 
inc       eax
M02_L12
 
cmp       eax,r14d
jl        short M02_L20
M02_L13
 
mov       eax,1
mov       rcx,0C63BA16568C6
cmp       [rsp+70],rcx
je        short M02_L14
call      CORINFO_HELP_FAIL_FAST
M02_L14
 
nop
add       rsp,78
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M02_L15
 
inc       r10d
cmp       r10d,r14d
jne       near ptr M02_L02
jmp       near ptr M02_L03
M02_L16
 
test      r14d,r14d
je        near ptr M02_L04
jmp       short M02_L09
M02_L17
 
mov       eax,r14d
mov       [rsp+5C],eax
jmp       near ptr M02_L08
M02_L18
 
call      qword ptr [7FF9F603E9D0]
int       3
M02_L19
 
xor       eax,eax
jmp       short M02_L12
M02_L20
 
cmp       eax,r14d
jae       short M02_L21
mov       ecx,eax
movzx     ecx,word ptr [rbp+rcx*2]
cmp       ecx,20
je        short M02_L11
cmp       ecx,9
je        short M02_L11
cmp       ecx,0D
je        near ptr M02_L11
cmp       ecx,0A
sete      cl
movzx     ecx,cl
test      ecx,ecx
jne       near ptr M02_L11
jmp       near ptr M02_L09
M02_L21
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.ToBase64ByteSpan()
push      rdi
push      rsi
push      rbx
sub       rsp,50
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
mov       rbx,rcx
mov       rcx,[rbx+298]
test      rcx,rcx
je        short M00_L00
mov       eax,[rcx+8]
xor       edx,edx
test      eax,eax
sete      dl
test      edx,edx
sete      dl
movzx     edx,dl
test      eax,eax
jne       short M00_L01
jmp       short M00_L01
M00_L00
 
xor       edx,edx
M00_L01
 
test      edx,edx
je        near ptr M00_L04
cmp       [rcx],ecx
call      qword ptr [7FF9F5DB7318]; System.String.Trim()
mov       rsi,rax
imul      edx,[rsi+8],3
jo        short M00_L03
mov       ecx,edx
sar       ecx,1F
and       ecx,3
add       edx,ecx
sar       edx,2
movsxd    rdx,edx
mov       rcx,offset MT_System.Byte[]
call      CORINFO_HELP_NEWARR_1_VC
lea       rcx,[rax+10]
mov       edi,[rax+8]
mov       edx,edi
lea       r8,[rsi+0C]
mov       eax,[rsi+8]
mov       [rsp+38],r8
mov       [rsp+40],eax
mov       [rsp+28],rcx
mov       [rsp+30],edx
lea       rcx,[rsp+38]
lea       rdx,[rsp+28]
lea       r8,[rsp+48]
call      qword ptr [7FF9F6134720]; System.Convert.TryFromBase64Chars(System.ReadOnlySpan`1, System.Span`1, Int32 ByRef)
test      eax,eax
jne       short M00_L06
xor       esi,esi
M00_L02
 
mov       rax,[rbx+18]
mov       [rax+38],esi
add       rsp,50
pop       rbx
pop       rsi
pop       rdi
ret
M00_L03
 
call      CORINFO_HELP_OVERFLOW
M00_L04
 
call      qword ptr [7FF9F6335368]
mov       rdi,rax
test      rdi,rdi
jne       short M00_L05
call      qword ptr [7FF9F63350B0]
mov       rdi,rax
M00_L05
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,1E1CA708468
mov       r8,rdi
call      qword ptr [7FF9F6046670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L06
 
mov       esi,[rsp+48]
cmp       esi,edi
jbe       short M00_L07
call      qword ptr [7FF9F601E9D0]
int       3
M00_L07
 
jmp       short M00_L02
 
System.String.Trim()
push      rsi
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,[rbx+8]
test      esi,esi
je        short M01_L03
movzx     ecx,word ptr [rbx+0C]
cmp       ecx,100
jae       short M01_L00
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       short M01_L04
jmp       short M01_L01
M01_L00
 
call      qword ptr [7FF9F670E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       short M01_L04
M01_L01
 
dec       esi
mov       ecx,esi
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M01_L02
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       short M01_L04
jmp       short M01_L03
M01_L02
 
call      qword ptr [7FF9F670E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       short M01_L04
M01_L03
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rsi
ret
M01_L04
 
mov       rcx,rbx
mov       edx,3
call      qword ptr [7FF9F5DB73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
nop
add       rsp,28
pop       rbx
pop       rsi
ret
 
System.Convert.TryFromBase64Chars(System.ReadOnlySpan`1, System.Span`1, Int32 ByRef)
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,78
xor       eax,eax
mov       [rsp+30],rax
mov       rax,5F9971A02329
mov       [rsp+70],rax
mov       rbx,r8
mov       rsi,rdx
mov       rdi,rcx
mov       rbp,[rdi]
mov       r14d,[rdi+8]
mov       r15,[rsi]
mov       r13d,[rsi+8]
lea       r12,[rsp+28]
mov       dword ptr [rsp+44],4
xor       r8d,r8d
mov       [rbx],r8d
test      r14d,r14d
je        near ptr M02_L13
M02_L00
 
mov       [rdi],rbp
mov       [rdi+8],r14d
mov       [rsi],r15
mov       [rsi+8],r13d
lea       r8,[rsp+68]
lea       r9,[rsp+60]
mov       rcx,rdi
mov       rdx,rsi
call      qword ptr [7FF9F60DE628]; System.Convert.TryDecodeFromUtf16(System.ReadOnlySpan`1, System.Span`1, Int32 ByRef, Int32 ByRef)
mov       edx,[rsp+60]
add       [rbx],edx
test      eax,eax
jne       near ptr M02_L13
mov       eax,[rsp+68]
cmp       eax,r14d
ja        near ptr M02_L18
mov       edx,eax
lea       rbp,[rbp+rdx*2]
sub       r14d,eax
mov       eax,[rsp+60]
cmp       eax,r13d
ja        near ptr M02_L18
mov       edx,eax
add       r15,rdx
sub       r13d,eax
test      r14d,r14d
je        near ptr M02_L21
movzx     eax,word ptr [rbp]
cmp       eax,20
je        short M02_L01
cmp       eax,9
je        short M02_L01
cmp       eax,0D
je        short M02_L01
cmp       eax,0A
je        short M02_L01
mov       rax,r12
mov       r11d,[rsp+44]
mov       r10d,r11d
xor       ecx,ecx
xor       r9d,r9d
test      r14d,r14d
jle       near ptr M02_L17
jmp       near ptr M02_L05
nop
M02_L01
 
mov       r10d,1
cmp       r14d,1
je        short M02_L03
M02_L02
 
cmp       r10d,r14d
jae       near ptr M02_L21
mov       eax,r10d
movzx     eax,word ptr [rbp+rax*2]
cmp       eax,20
je        near ptr M02_L15
cmp       eax,9
je        near ptr M02_L15
cmp       eax,0D
je        near ptr M02_L15
cmp       eax,0A
je        near ptr M02_L15
M02_L03
 
cmp       r10d,r14d
ja        near ptr M02_L18
mov       eax,r10d
lea       rbp,[rbp+rax*2]
sub       r14d,r10d
mov       ecx,[rsp+60]
mov       edx,55555556
mov       eax,edx
imul      dword ptr [rsp+60]
mov       r9d,edx
shr       r9d,1F
add       r9d,edx
lea       r9d,[r9+r9*2]
sub       ecx,r9d
jne       near ptr M02_L16
M02_L04
 
test      r14d,r14d
je        near ptr M02_L13
jmp       near ptr M02_L00
M02_L05
 
mov       r8d,r9d
movzx     r8d,word ptr [rbp+r8*2]
cmp       r8d,20
je        short M02_L06
cmp       r8d,9
je        short M02_L06
cmp       r8d,0D
je        short M02_L06
cmp       r8d,0A
je        short M02_L06
lea       edx,[rcx+1]
cmp       ecx,r10d
jae       near ptr M02_L21
mov       ecx,ecx
mov       [rax+rcx*2],r8w
cmp       edx,r10d
mov       ecx,edx
je        short M02_L07
M02_L06
 
inc       r9d
cmp       r9d,r14d
jge       near ptr M02_L17
jmp       short M02_L05
M02_L07
 
lea       eax,[r9+1]
mov       [rsp+5C],eax
M02_L08
 
test      cl,3
jne       near ptr M02_L09
cmp       ecx,r11d
ja        near ptr M02_L18
mov       r11d,ecx
mov       [rsi],r15
mov       [rsi+8],r13d
mov       [rsp+30],r12
mov       [rsp+44],r11d
mov       [rsp+38],r11d
lea       rcx,[rsp+30]
lea       r9,[rsp+48]
lea       r8,[rsp+50]
mov       rdx,rsi
call      qword ptr [7FF9F60DE628]; System.Convert.TryDecodeFromUtf16(System.ReadOnlySpan`1, System.Span`1, Int32 ByRef, Int32 ByRef)
test      eax,eax
je        short M02_L09
mov       eax,[rsp+48]
add       [rbx],eax
mov       eax,[rsp+5C]
cmp       eax,r14d
ja        near ptr M02_L18
mov       edx,eax
lea       rbp,[rbp+rdx*2]
sub       r14d,eax
mov       eax,[rsp+48]
cmp       eax,r13d
ja        near ptr M02_L18
mov       edx,eax
add       rdx,r15
mov       r15,rdx
sub       r13d,eax
mov       ecx,[rsp+48]
mov       edx,55555556
mov       eax,edx
imul      dword ptr [rsp+48]
mov       eax,edx
shr       eax,1F
add       eax,edx
lea       eax,[rax+rax*2]
sub       ecx,eax
jne       near ptr M02_L19
jmp       near ptr M02_L04
M02_L09
 
xor       eax,eax
mov       [rbx],eax
mov       rcx,5F9971A02329
cmp       [rsp+70],rcx
je        short M02_L10
call      CORINFO_HELP_FAIL_FAST
M02_L10
 
nop
add       rsp,78
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M02_L11
 
inc       eax
M02_L12
 
cmp       eax,r14d
jl        short M02_L20
M02_L13
 
mov       eax,1
mov       rcx,5F9971A02329
cmp       [rsp+70],rcx
je        short M02_L14
call      CORINFO_HELP_FAIL_FAST
M02_L14
 
nop
add       rsp,78
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M02_L15
 
inc       r10d
cmp       r10d,r14d
jne       near ptr M02_L02
jmp       near ptr M02_L03
M02_L16
 
test      r14d,r14d
je        near ptr M02_L04
jmp       short M02_L09
M02_L17
 
mov       eax,r14d
mov       [rsp+5C],eax
jmp       near ptr M02_L08
M02_L18
 
call      qword ptr [7FF9F601E9D0]
int       3
M02_L19
 
xor       eax,eax
jmp       short M02_L12
M02_L20
 
cmp       eax,r14d
jae       short M02_L21
mov       ecx,eax
movzx     ecx,word ptr [rbp+rcx*2]
cmp       ecx,20
je        short M02_L11
cmp       ecx,9
je        short M02_L11
cmp       ecx,0D
je        near ptr M02_L11
cmp       ecx,0A
sete      cl
movzx     ecx,cl
test      ecx,ecx
jne       near ptr M02_L11
jmp       near ptr M02_L09
M02_L21
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.ToBase64ByteSpan()
push      rdi
push      rsi
push      rbx
sub       rsp,50
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
mov       rbx,rcx
mov       rcx,[rbx+298]
test      rcx,rcx
je        short M00_L00
mov       eax,[rcx+8]
xor       edx,edx
test      eax,eax
sete      dl
test      edx,edx
sete      dl
movzx     edx,dl
test      eax,eax
jne       short M00_L01
jmp       short M00_L01
M00_L00
 
xor       edx,edx
M00_L01
 
test      edx,edx
je        near ptr M00_L04
cmp       [rcx],ecx
call      qword ptr [7FF9F5DE7318]; System.String.Trim()
mov       rsi,rax
imul      edx,[rsi+8],3
jo        short M00_L03
mov       ecx,edx
sar       ecx,1F
and       ecx,3
add       edx,ecx
sar       edx,2
movsxd    rdx,edx
mov       rcx,offset MT_System.Byte[]
call      CORINFO_HELP_NEWARR_1_VC
lea       rcx,[rax+10]
mov       edi,[rax+8]
mov       edx,edi
lea       r8,[rsi+0C]
mov       eax,[rsi+8]
mov       [rsp+38],r8
mov       [rsp+40],eax
mov       [rsp+28],rcx
mov       [rsp+30],edx
lea       rcx,[rsp+38]
lea       rdx,[rsp+28]
lea       r8,[rsp+48]
call      qword ptr [7FF9F6164720]; System.Convert.TryFromBase64Chars(System.ReadOnlySpan`1, System.Span`1, Int32 ByRef)
test      eax,eax
jne       short M00_L06
xor       esi,esi
M00_L02
 
mov       rax,[rbx+18]
mov       [rax+38],esi
add       rsp,50
pop       rbx
pop       rsi
pop       rdi
ret
M00_L03
 
call      CORINFO_HELP_OVERFLOW
M00_L04
 
call      qword ptr [7FF9F6365368]
mov       rdi,rax
test      rdi,rdi
jne       short M00_L05
call      qword ptr [7FF9F63650B0]
mov       rdi,rax
M00_L05
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,252D8478468
mov       r8,rdi
call      qword ptr [7FF9F6076670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L06
 
mov       esi,[rsp+48]
cmp       esi,edi
jbe       short M00_L07
call      qword ptr [7FF9F604E9D0]
int       3
M00_L07
 
jmp       short M00_L02
 
System.String.Trim()
push      rsi
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,[rbx+8]
test      esi,esi
je        short M01_L03
movzx     ecx,word ptr [rbx+0C]
cmp       ecx,100
jae       short M01_L00
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       short M01_L04
jmp       short M01_L01
M01_L00
 
call      qword ptr [7FF9F673E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       short M01_L04
M01_L01
 
dec       esi
mov       ecx,esi
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M01_L02
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       short M01_L04
jmp       short M01_L03
M01_L02
 
call      qword ptr [7FF9F673E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       short M01_L04
M01_L03
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rsi
ret
M01_L04
 
mov       rcx,rbx
mov       edx,3
call      qword ptr [7FF9F5DE73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
nop
add       rsp,28
pop       rbx
pop       rsi
ret
 
System.Convert.TryFromBase64Chars(System.ReadOnlySpan`1, System.Span`1, Int32 ByRef)
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,78
xor       eax,eax
mov       [rsp+30],rax
mov       rax,53EC664F7490
mov       [rsp+70],rax
mov       rbx,r8
mov       rsi,rdx
mov       rdi,rcx
mov       rbp,[rdi]
mov       r14d,[rdi+8]
mov       r15,[rsi]
mov       r13d,[rsi+8]
lea       r12,[rsp+28]
mov       dword ptr [rsp+44],4
xor       r8d,r8d
mov       [rbx],r8d
test      r14d,r14d
je        near ptr M02_L13
M02_L00
 
mov       [rdi],rbp
mov       [rdi+8],r14d
mov       [rsi],r15
mov       [rsi+8],r13d
lea       r8,[rsp+68]
lea       r9,[rsp+60]
mov       rcx,rdi
mov       rdx,rsi
call      qword ptr [7FF9F610E628]; System.Convert.TryDecodeFromUtf16(System.ReadOnlySpan`1, System.Span`1, Int32 ByRef, Int32 ByRef)
mov       edx,[rsp+60]
add       [rbx],edx
test      eax,eax
jne       near ptr M02_L13
mov       eax,[rsp+68]
cmp       eax,r14d
ja        near ptr M02_L18
mov       edx,eax
lea       rbp,[rbp+rdx*2]
sub       r14d,eax
mov       eax,[rsp+60]
cmp       eax,r13d
ja        near ptr M02_L18
mov       edx,eax
add       r15,rdx
sub       r13d,eax
test      r14d,r14d
je        near ptr M02_L21
movzx     eax,word ptr [rbp]
cmp       eax,20
je        short M02_L01
cmp       eax,9
je        short M02_L01
cmp       eax,0D
je        short M02_L01
cmp       eax,0A
je        short M02_L01
mov       rax,r12
mov       r11d,[rsp+44]
mov       r10d,r11d
xor       ecx,ecx
xor       r9d,r9d
test      r14d,r14d
jle       near ptr M02_L17
jmp       near ptr M02_L05
nop
M02_L01
 
mov       r10d,1
cmp       r14d,1
je        short M02_L03
M02_L02
 
cmp       r10d,r14d
jae       near ptr M02_L21
mov       eax,r10d
movzx     eax,word ptr [rbp+rax*2]
cmp       eax,20
je        near ptr M02_L15
cmp       eax,9
je        near ptr M02_L15
cmp       eax,0D
je        near ptr M02_L15
cmp       eax,0A
je        near ptr M02_L15
M02_L03
 
cmp       r10d,r14d
ja        near ptr M02_L18
mov       eax,r10d
lea       rbp,[rbp+rax*2]
sub       r14d,r10d
mov       ecx,[rsp+60]
mov       edx,55555556
mov       eax,edx
imul      dword ptr [rsp+60]
mov       r9d,edx
shr       r9d,1F
add       r9d,edx
lea       r9d,[r9+r9*2]
sub       ecx,r9d
jne       near ptr M02_L16
M02_L04
 
test      r14d,r14d
je        near ptr M02_L13
jmp       near ptr M02_L00
M02_L05
 
mov       r8d,r9d
movzx     r8d,word ptr [rbp+r8*2]
cmp       r8d,20
je        short M02_L06
cmp       r8d,9
je        short M02_L06
cmp       r8d,0D
je        short M02_L06
cmp       r8d,0A
je        short M02_L06
lea       edx,[rcx+1]
cmp       ecx,r10d
jae       near ptr M02_L21
mov       ecx,ecx
mov       [rax+rcx*2],r8w
cmp       edx,r10d
mov       ecx,edx
je        short M02_L07
M02_L06
 
inc       r9d
cmp       r9d,r14d
jge       near ptr M02_L17
jmp       short M02_L05
M02_L07
 
lea       eax,[r9+1]
mov       [rsp+5C],eax
M02_L08
 
test      cl,3
jne       near ptr M02_L09
cmp       ecx,r11d
ja        near ptr M02_L18
mov       r11d,ecx
mov       [rsi],r15
mov       [rsi+8],r13d
mov       [rsp+30],r12
mov       [rsp+44],r11d
mov       [rsp+38],r11d
lea       rcx,[rsp+30]
lea       r9,[rsp+48]
lea       r8,[rsp+50]
mov       rdx,rsi
call      qword ptr [7FF9F610E628]; System.Convert.TryDecodeFromUtf16(System.ReadOnlySpan`1, System.Span`1, Int32 ByRef, Int32 ByRef)
test      eax,eax
je        short M02_L09
mov       eax,[rsp+48]
add       [rbx],eax
mov       eax,[rsp+5C]
cmp       eax,r14d
ja        near ptr M02_L18
mov       edx,eax
lea       rbp,[rbp+rdx*2]
sub       r14d,eax
mov       eax,[rsp+48]
cmp       eax,r13d
ja        near ptr M02_L18
mov       edx,eax
add       rdx,r15
mov       r15,rdx
sub       r13d,eax
mov       ecx,[rsp+48]
mov       edx,55555556
mov       eax,edx
imul      dword ptr [rsp+48]
mov       eax,edx
shr       eax,1F
add       eax,edx
lea       eax,[rax+rax*2]
sub       ecx,eax
jne       near ptr M02_L19
jmp       near ptr M02_L04
M02_L09
 
xor       eax,eax
mov       [rbx],eax
mov       rcx,53EC664F7490
cmp       [rsp+70],rcx
je        short M02_L10
call      CORINFO_HELP_FAIL_FAST
M02_L10
 
nop
add       rsp,78
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M02_L11
 
inc       eax
M02_L12
 
cmp       eax,r14d
jl        short M02_L20
M02_L13
 
mov       eax,1
mov       rcx,53EC664F7490
cmp       [rsp+70],rcx
je        short M02_L14
call      CORINFO_HELP_FAIL_FAST
M02_L14
 
nop
add       rsp,78
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M02_L15
 
inc       r10d
cmp       r10d,r14d
jne       near ptr M02_L02
jmp       near ptr M02_L03
M02_L16
 
test      r14d,r14d
je        near ptr M02_L04
jmp       short M02_L09
M02_L17
 
mov       eax,r14d
mov       [rsp+5C],eax
jmp       near ptr M02_L08
M02_L18
 
call      qword ptr [7FF9F604E9D0]
int       3
M02_L19
 
xor       eax,eax
jmp       short M02_L12
M02_L20
 
cmp       eax,r14d
jae       short M02_L21
mov       ecx,eax
movzx     ecx,word ptr [rbp+rcx*2]
cmp       ecx,20
je        short M02_L11
cmp       ecx,9
je        short M02_L11
cmp       ecx,0D
je        near ptr M02_L11
cmp       ecx,0A
sete      cl
movzx     ecx,cl
test      ecx,ecx
jne       near ptr M02_L11
jmp       near ptr M02_L09
M02_L21
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.ToBase64ByteSpan()
push      rdi
push      rsi
push      rbx
sub       rsp,50
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
mov       rbx,rcx
mov       rcx,[rbx+298]
test      rcx,rcx
je        short M00_L00
mov       eax,[rcx+8]
xor       edx,edx
test      eax,eax
sete      dl
test      edx,edx
sete      dl
movzx     edx,dl
test      eax,eax
jne       short M00_L01
jmp       short M00_L01
M00_L00
 
xor       edx,edx
M00_L01
 
test      edx,edx
je        near ptr M00_L04
cmp       [rcx],ecx
call      qword ptr [7FF9F5DC7318]; System.String.Trim()
mov       rsi,rax
imul      edx,[rsi+8],3
jo        short M00_L03
mov       ecx,edx
sar       ecx,1F
and       ecx,3
add       edx,ecx
sar       edx,2
movsxd    rdx,edx
mov       rcx,offset MT_System.Byte[]
call      CORINFO_HELP_NEWARR_1_VC
lea       rcx,[rax+10]
mov       edi,[rax+8]
mov       edx,edi
lea       r8,[rsi+0C]
mov       eax,[rsi+8]
mov       [rsp+38],r8
mov       [rsp+40],eax
mov       [rsp+28],rcx
mov       [rsp+30],edx
lea       rcx,[rsp+38]
lea       rdx,[rsp+28]
lea       r8,[rsp+48]
call      qword ptr [7FF9F6144720]; System.Convert.TryFromBase64Chars(System.ReadOnlySpan`1, System.Span`1, Int32 ByRef)
test      eax,eax
jne       short M00_L06
xor       esi,esi
M00_L02
 
mov       rax,[rbx+18]
mov       [rax+38],esi
add       rsp,50
pop       rbx
pop       rsi
pop       rdi
ret
M00_L03
 
call      CORINFO_HELP_OVERFLOW
M00_L04
 
call      qword ptr [7FF9F6345368]
mov       rdi,rax
test      rdi,rdi
jne       short M00_L05
call      qword ptr [7FF9F63450B0]
mov       rdi,rax
M00_L05
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,287255B8468
mov       r8,rdi
call      qword ptr [7FF9F6056670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L06
 
mov       esi,[rsp+48]
cmp       esi,edi
jbe       short M00_L07
call      qword ptr [7FF9F602E9D0]
int       3
M00_L07
 
jmp       short M00_L02
 
System.String.Trim()
push      rsi
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,[rbx+8]
test      esi,esi
je        short M01_L03
movzx     ecx,word ptr [rbx+0C]
cmp       ecx,100
jae       short M01_L00
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       short M01_L04
jmp       short M01_L01
M01_L00
 
call      qword ptr [7FF9F671E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       short M01_L04
M01_L01
 
dec       esi
mov       ecx,esi
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M01_L02
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       short M01_L04
jmp       short M01_L03
M01_L02
 
call      qword ptr [7FF9F671E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       short M01_L04
M01_L03
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rsi
ret
M01_L04
 
mov       rcx,rbx
mov       edx,3
call      qword ptr [7FF9F5DC73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
nop
add       rsp,28
pop       rbx
pop       rsi
ret
 
System.Convert.TryFromBase64Chars(System.ReadOnlySpan`1, System.Span`1, Int32 ByRef)
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,78
xor       eax,eax
mov       [rsp+30],rax
mov       rax,0EF23E23E2F98
mov       [rsp+70],rax
mov       rbx,r8
mov       rsi,rdx
mov       rdi,rcx
mov       rbp,[rdi]
mov       r14d,[rdi+8]
mov       r15,[rsi]
mov       r13d,[rsi+8]
lea       r12,[rsp+28]
mov       dword ptr [rsp+44],4
xor       r8d,r8d
mov       [rbx],r8d
test      r14d,r14d
je        near ptr M02_L13
M02_L00
 
mov       [rdi],rbp
mov       [rdi+8],r14d
mov       [rsi],r15
mov       [rsi+8],r13d
lea       r8,[rsp+68]
lea       r9,[rsp+60]
mov       rcx,rdi
mov       rdx,rsi
call      qword ptr [7FF9F60EE628]; System.Convert.TryDecodeFromUtf16(System.ReadOnlySpan`1, System.Span`1, Int32 ByRef, Int32 ByRef)
mov       edx,[rsp+60]
add       [rbx],edx
test      eax,eax
jne       near ptr M02_L13
mov       eax,[rsp+68]
cmp       eax,r14d
ja        near ptr M02_L18
mov       edx,eax
lea       rbp,[rbp+rdx*2]
sub       r14d,eax
mov       eax,[rsp+60]
cmp       eax,r13d
ja        near ptr M02_L18
mov       edx,eax
add       r15,rdx
sub       r13d,eax
test      r14d,r14d
je        near ptr M02_L21
movzx     eax,word ptr [rbp]
cmp       eax,20
je        short M02_L01
cmp       eax,9
je        short M02_L01
cmp       eax,0D
je        short M02_L01
cmp       eax,0A
je        short M02_L01
mov       rax,r12
mov       r11d,[rsp+44]
mov       r10d,r11d
xor       ecx,ecx
xor       r9d,r9d
test      r14d,r14d
jle       near ptr M02_L17
jmp       near ptr M02_L05
nop
M02_L01
 
mov       r10d,1
cmp       r14d,1
je        short M02_L03
M02_L02
 
cmp       r10d,r14d
jae       near ptr M02_L21
mov       eax,r10d
movzx     eax,word ptr [rbp+rax*2]
cmp       eax,20
je        near ptr M02_L15
cmp       eax,9
je        near ptr M02_L15
cmp       eax,0D
je        near ptr M02_L15
cmp       eax,0A
je        near ptr M02_L15
M02_L03
 
cmp       r10d,r14d
ja        near ptr M02_L18
mov       eax,r10d
lea       rbp,[rbp+rax*2]
sub       r14d,r10d
mov       ecx,[rsp+60]
mov       edx,55555556
mov       eax,edx
imul      dword ptr [rsp+60]
mov       r9d,edx
shr       r9d,1F
add       r9d,edx
lea       r9d,[r9+r9*2]
sub       ecx,r9d
jne       near ptr M02_L16
M02_L04
 
test      r14d,r14d
je        near ptr M02_L13
jmp       near ptr M02_L00
M02_L05
 
mov       r8d,r9d
movzx     r8d,word ptr [rbp+r8*2]
cmp       r8d,20
je        short M02_L06
cmp       r8d,9
je        short M02_L06
cmp       r8d,0D
je        short M02_L06
cmp       r8d,0A
je        short M02_L06
lea       edx,[rcx+1]
cmp       ecx,r10d
jae       near ptr M02_L21
mov       ecx,ecx
mov       [rax+rcx*2],r8w
cmp       edx,r10d
mov       ecx,edx
je        short M02_L07
M02_L06
 
inc       r9d
cmp       r9d,r14d
jge       near ptr M02_L17
jmp       short M02_L05
M02_L07
 
lea       eax,[r9+1]
mov       [rsp+5C],eax
M02_L08
 
test      cl,3
jne       near ptr M02_L09
cmp       ecx,r11d
ja        near ptr M02_L18
mov       r11d,ecx
mov       [rsi],r15
mov       [rsi+8],r13d
mov       [rsp+30],r12
mov       [rsp+44],r11d
mov       [rsp+38],r11d
lea       rcx,[rsp+30]
lea       r9,[rsp+48]
lea       r8,[rsp+50]
mov       rdx,rsi
call      qword ptr [7FF9F60EE628]; System.Convert.TryDecodeFromUtf16(System.ReadOnlySpan`1, System.Span`1, Int32 ByRef, Int32 ByRef)
test      eax,eax
je        short M02_L09
mov       eax,[rsp+48]
add       [rbx],eax
mov       eax,[rsp+5C]
cmp       eax,r14d
ja        near ptr M02_L18
mov       edx,eax
lea       rbp,[rbp+rdx*2]
sub       r14d,eax
mov       eax,[rsp+48]
cmp       eax,r13d
ja        near ptr M02_L18
mov       edx,eax
add       rdx,r15
mov       r15,rdx
sub       r13d,eax
mov       ecx,[rsp+48]
mov       edx,55555556
mov       eax,edx
imul      dword ptr [rsp+48]
mov       eax,edx
shr       eax,1F
add       eax,edx
lea       eax,[rax+rax*2]
sub       ecx,eax
jne       near ptr M02_L19
jmp       near ptr M02_L04
M02_L09
 
xor       eax,eax
mov       [rbx],eax
mov       rcx,0EF23E23E2F98
cmp       [rsp+70],rcx
je        short M02_L10
call      CORINFO_HELP_FAIL_FAST
M02_L10
 
nop
add       rsp,78
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M02_L11
 
inc       eax
M02_L12
 
cmp       eax,r14d
jl        short M02_L20
M02_L13
 
mov       eax,1
mov       rcx,0EF23E23E2F98
cmp       [rsp+70],rcx
je        short M02_L14
call      CORINFO_HELP_FAIL_FAST
M02_L14
 
nop
add       rsp,78
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M02_L15
 
inc       r10d
cmp       r10d,r14d
jne       near ptr M02_L02
jmp       near ptr M02_L03
M02_L16
 
test      r14d,r14d
je        near ptr M02_L04
jmp       short M02_L09
M02_L17
 
mov       eax,r14d
mov       [rsp+5C],eax
jmp       near ptr M02_L08
M02_L18
 
call      qword ptr [7FF9F602E9D0]
int       3
M02_L19
 
xor       eax,eax
jmp       short M02_L12
M02_L20
 
cmp       eax,r14d
jae       short M02_L21
mov       ecx,eax
movzx     ecx,word ptr [rbp+rcx*2]
cmp       ecx,20
je        short M02_L11
cmp       ecx,9
je        short M02_L11
cmp       ecx,0D
je        near ptr M02_L11
cmp       ecx,0A
sete      cl
movzx     ecx,cl
test      ecx,ecx
jne       near ptr M02_L11
jmp       near ptr M02_L09
M02_L21
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.ToBase64ByteSpan()
push      rdi
push      rsi
push      rbx
sub       rsp,50
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
mov       rbx,rcx
mov       rcx,[rbx+298]
test      rcx,rcx
je        short M00_L00
mov       eax,[rcx+8]
xor       edx,edx
test      eax,eax
sete      dl
test      edx,edx
sete      dl
movzx     edx,dl
test      eax,eax
jne       short M00_L01
jmp       short M00_L01
M00_L00
 
xor       edx,edx
M00_L01
 
test      edx,edx
je        near ptr M00_L04
cmp       [rcx],ecx
call      qword ptr [7FF9F5DB7318]; System.String.Trim()
mov       rsi,rax
imul      edx,[rsi+8],3
jo        short M00_L03
mov       ecx,edx
sar       ecx,1F
and       ecx,3
add       edx,ecx
sar       edx,2
movsxd    rdx,edx
mov       rcx,offset MT_System.Byte[]
call      CORINFO_HELP_NEWARR_1_VC
lea       rcx,[rax+10]
mov       edi,[rax+8]
mov       edx,edi
lea       r8,[rsi+0C]
mov       eax,[rsi+8]
mov       [rsp+38],r8
mov       [rsp+40],eax
mov       [rsp+28],rcx
mov       [rsp+30],edx
lea       rcx,[rsp+38]
lea       rdx,[rsp+28]
lea       r8,[rsp+48]
call      qword ptr [7FF9F6134720]; System.Convert.TryFromBase64Chars(System.ReadOnlySpan`1, System.Span`1, Int32 ByRef)
test      eax,eax
jne       short M00_L06
xor       esi,esi
M00_L02
 
mov       rax,[rbx+18]
mov       [rax+38],esi
add       rsp,50
pop       rbx
pop       rsi
pop       rdi
ret
M00_L03
 
call      CORINFO_HELP_OVERFLOW
M00_L04
 
call      qword ptr [7FF9F6335368]
mov       rdi,rax
test      rdi,rdi
jne       short M00_L05
call      qword ptr [7FF9F63350B0]
mov       rdi,rax
M00_L05
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,22F9F048468
mov       r8,rdi
call      qword ptr [7FF9F6046670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L06
 
mov       esi,[rsp+48]
cmp       esi,edi
jbe       short M00_L07
call      qword ptr [7FF9F601E9D0]
int       3
M00_L07
 
jmp       short M00_L02
 
System.String.Trim()
push      rsi
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,[rbx+8]
test      esi,esi
je        short M01_L03
movzx     ecx,word ptr [rbx+0C]
cmp       ecx,100
jae       short M01_L00
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       short M01_L04
jmp       short M01_L01
M01_L00
 
call      qword ptr [7FF9F670E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       short M01_L04
M01_L01
 
dec       esi
mov       ecx,esi
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M01_L02
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       short M01_L04
jmp       short M01_L03
M01_L02
 
call      qword ptr [7FF9F670E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       short M01_L04
M01_L03
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rsi
ret
M01_L04
 
mov       rcx,rbx
mov       edx,3
call      qword ptr [7FF9F5DB73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
nop
add       rsp,28
pop       rbx
pop       rsi
ret
 
System.Convert.TryFromBase64Chars(System.ReadOnlySpan`1, System.Span`1, Int32 ByRef)
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,78
xor       eax,eax
mov       [rsp+30],rax
mov       rax,1E33F267EA34
mov       [rsp+70],rax
mov       rbx,r8
mov       rsi,rdx
mov       rdi,rcx
mov       rbp,[rdi]
mov       r14d,[rdi+8]
mov       r15,[rsi]
mov       r13d,[rsi+8]
lea       r12,[rsp+28]
mov       dword ptr [rsp+44],4
xor       r8d,r8d
mov       [rbx],r8d
test      r14d,r14d
je        near ptr M02_L13
M02_L00
 
mov       [rdi],rbp
mov       [rdi+8],r14d
mov       [rsi],r15
mov       [rsi+8],r13d
lea       r8,[rsp+68]
lea       r9,[rsp+60]
mov       rcx,rdi
mov       rdx,rsi
call      qword ptr [7FF9F60DE628]; System.Convert.TryDecodeFromUtf16(System.ReadOnlySpan`1, System.Span`1, Int32 ByRef, Int32 ByRef)
mov       edx,[rsp+60]
add       [rbx],edx
test      eax,eax
jne       near ptr M02_L13
mov       eax,[rsp+68]
cmp       eax,r14d
ja        near ptr M02_L18
mov       edx,eax
lea       rbp,[rbp+rdx*2]
sub       r14d,eax
mov       eax,[rsp+60]
cmp       eax,r13d
ja        near ptr M02_L18
mov       edx,eax
add       r15,rdx
sub       r13d,eax
test      r14d,r14d
je        near ptr M02_L21
movzx     eax,word ptr [rbp]
cmp       eax,20
je        short M02_L01
cmp       eax,9
je        short M02_L01
cmp       eax,0D
je        short M02_L01
cmp       eax,0A
je        short M02_L01
mov       rax,r12
mov       r11d,[rsp+44]
mov       r10d,r11d
xor       ecx,ecx
xor       r9d,r9d
test      r14d,r14d
jle       near ptr M02_L17
jmp       near ptr M02_L05
nop
M02_L01
 
mov       r10d,1
cmp       r14d,1
je        short M02_L03
M02_L02
 
cmp       r10d,r14d
jae       near ptr M02_L21
mov       eax,r10d
movzx     eax,word ptr [rbp+rax*2]
cmp       eax,20
je        near ptr M02_L15
cmp       eax,9
je        near ptr M02_L15
cmp       eax,0D
je        near ptr M02_L15
cmp       eax,0A
je        near ptr M02_L15
M02_L03
 
cmp       r10d,r14d
ja        near ptr M02_L18
mov       eax,r10d
lea       rbp,[rbp+rax*2]
sub       r14d,r10d
mov       ecx,[rsp+60]
mov       edx,55555556
mov       eax,edx
imul      dword ptr [rsp+60]
mov       r9d,edx
shr       r9d,1F
add       r9d,edx
lea       r9d,[r9+r9*2]
sub       ecx,r9d
jne       near ptr M02_L16
M02_L04
 
test      r14d,r14d
je        near ptr M02_L13
jmp       near ptr M02_L00
M02_L05
 
mov       r8d,r9d
movzx     r8d,word ptr [rbp+r8*2]
cmp       r8d,20
je        short M02_L06
cmp       r8d,9
je        short M02_L06
cmp       r8d,0D
je        short M02_L06
cmp       r8d,0A
je        short M02_L06
lea       edx,[rcx+1]
cmp       ecx,r10d
jae       near ptr M02_L21
mov       ecx,ecx
mov       [rax+rcx*2],r8w
cmp       edx,r10d
mov       ecx,edx
je        short M02_L07
M02_L06
 
inc       r9d
cmp       r9d,r14d
jge       near ptr M02_L17
jmp       short M02_L05
M02_L07
 
lea       eax,[r9+1]
mov       [rsp+5C],eax
M02_L08
 
test      cl,3
jne       near ptr M02_L09
cmp       ecx,r11d
ja        near ptr M02_L18
mov       r11d,ecx
mov       [rsi],r15
mov       [rsi+8],r13d
mov       [rsp+30],r12
mov       [rsp+44],r11d
mov       [rsp+38],r11d
lea       rcx,[rsp+30]
lea       r9,[rsp+48]
lea       r8,[rsp+50]
mov       rdx,rsi
call      qword ptr [7FF9F60DE628]; System.Convert.TryDecodeFromUtf16(System.ReadOnlySpan`1, System.Span`1, Int32 ByRef, Int32 ByRef)
test      eax,eax
je        short M02_L09
mov       eax,[rsp+48]
add       [rbx],eax
mov       eax,[rsp+5C]
cmp       eax,r14d
ja        near ptr M02_L18
mov       edx,eax
lea       rbp,[rbp+rdx*2]
sub       r14d,eax
mov       eax,[rsp+48]
cmp       eax,r13d
ja        near ptr M02_L18
mov       edx,eax
add       rdx,r15
mov       r15,rdx
sub       r13d,eax
mov       ecx,[rsp+48]
mov       edx,55555556
mov       eax,edx
imul      dword ptr [rsp+48]
mov       eax,edx
shr       eax,1F
add       eax,edx
lea       eax,[rax+rax*2]
sub       ecx,eax
jne       near ptr M02_L19
jmp       near ptr M02_L04
M02_L09
 
xor       eax,eax
mov       [rbx],eax
mov       rcx,1E33F267EA34
cmp       [rsp+70],rcx
je        short M02_L10
call      CORINFO_HELP_FAIL_FAST
M02_L10
 
nop
add       rsp,78
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M02_L11
 
inc       eax
M02_L12
 
cmp       eax,r14d
jl        short M02_L20
M02_L13
 
mov       eax,1
mov       rcx,1E33F267EA34
cmp       [rsp+70],rcx
je        short M02_L14
call      CORINFO_HELP_FAIL_FAST
M02_L14
 
nop
add       rsp,78
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M02_L15
 
inc       r10d
cmp       r10d,r14d
jne       near ptr M02_L02
jmp       near ptr M02_L03
M02_L16
 
test      r14d,r14d
je        near ptr M02_L04
jmp       short M02_L09
M02_L17
 
mov       eax,r14d
mov       [rsp+5C],eax
jmp       near ptr M02_L08
M02_L18
 
call      qword ptr [7FF9F601E9D0]
int       3
M02_L19
 
xor       eax,eax
jmp       short M02_L12
M02_L20
 
cmp       eax,r14d
jae       short M02_L21
mov       ecx,eax
movzx     ecx,word ptr [rbp+rcx*2]
cmp       ecx,20
je        short M02_L11
cmp       ecx,9
je        short M02_L11
cmp       ecx,0D
je        near ptr M02_L11
cmp       ecx,0A
sete      cl
movzx     ecx,cl
test      ecx,ecx
jne       near ptr M02_L11
jmp       near ptr M02_L09
M02_L21
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.14 (8.0.1425.11118), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.StringExtensionsCounterBenchmark.ToBase64ByteSpan()
push      rdi
push      rsi
push      rbx
sub       rsp,50
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
mov       rbx,rcx
mov       rcx,[rbx+298]
test      rcx,rcx
je        short M00_L00
mov       eax,[rcx+8]
xor       edx,edx
test      eax,eax
sete      dl
test      edx,edx
sete      dl
movzx     edx,dl
test      eax,eax
jne       short M00_L01
jmp       short M00_L01
M00_L00
 
xor       edx,edx
M00_L01
 
test      edx,edx
je        near ptr M00_L04
cmp       [rcx],ecx
call      qword ptr [7FF9F5DB7318]; System.String.Trim()
mov       rsi,rax
imul      edx,[rsi+8],3
jo        short M00_L03
mov       ecx,edx
sar       ecx,1F
and       ecx,3
add       edx,ecx
sar       edx,2
movsxd    rdx,edx
mov       rcx,offset MT_System.Byte[]
call      CORINFO_HELP_NEWARR_1_VC
lea       rcx,[rax+10]
mov       edi,[rax+8]
mov       edx,edi
lea       r8,[rsi+0C]
mov       eax,[rsi+8]
mov       [rsp+38],r8
mov       [rsp+40],eax
mov       [rsp+28],rcx
mov       [rsp+30],edx
lea       rcx,[rsp+38]
lea       rdx,[rsp+28]
lea       r8,[rsp+48]
call      qword ptr [7FF9F6134720]; System.Convert.TryFromBase64Chars(System.ReadOnlySpan`1, System.Span`1, Int32 ByRef)
test      eax,eax
jne       short M00_L06
xor       esi,esi
M00_L02
 
mov       rax,[rbx+18]
mov       [rax+38],esi
add       rsp,50
pop       rbx
pop       rsi
pop       rdi
ret
M00_L03
 
call      CORINFO_HELP_OVERFLOW
M00_L04
 
call      qword ptr [7FF9F6335368]
mov       rdi,rax
test      rdi,rdi
jne       short M00_L05
call      qword ptr [7FF9F63350B0]
mov       rdi,rax
M00_L05
 
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,2A98CBB8468
mov       r8,rdi
call      qword ptr [7FF9F6046670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L06
 
mov       esi,[rsp+48]
cmp       esi,edi
jbe       short M00_L07
call      qword ptr [7FF9F601E9D0]
int       3
M00_L07
 
jmp       short M00_L02
 
System.String.Trim()
push      rsi
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       esi,[rbx+8]
test      esi,esi
je        short M01_L03
movzx     ecx,word ptr [rbx+0C]
cmp       ecx,100
jae       short M01_L00
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       short M01_L04
jmp       short M01_L01
M01_L00
 
call      qword ptr [7FF9F670E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       short M01_L04
M01_L01
 
dec       esi
mov       ecx,esi
movzx     ecx,word ptr [rbx+rcx*2+0C]
cmp       ecx,100
jae       short M01_L02
mov       rax,7FFA52A42E50
test      byte ptr [rcx+rax],80
jne       short M01_L04
jmp       short M01_L03
M01_L02
 
call      qword ptr [7FF9F670E028]; System.Globalization.CharUnicodeInfo.GetIsWhiteSpace(Char)
test      eax,eax
jne       short M01_L04
M01_L03
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rsi
ret
M01_L04
 
mov       rcx,rbx
mov       edx,3
call      qword ptr [7FF9F5DB73F0]; System.String.TrimWhiteSpaceHelper(System.Text.TrimType)
nop
add       rsp,28
pop       rbx
pop       rsi
ret
 
System.Convert.TryFromBase64Chars(System.ReadOnlySpan`1, System.Span`1, Int32 ByRef)
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,78
xor       eax,eax
mov       [rsp+30],rax
mov       rax,50AF7984884E
mov       [rsp+70],rax
mov       rbx,r8
mov       rsi,rdx
mov       rdi,rcx
mov       rbp,[rdi]
mov       r14d,[rdi+8]
mov       r15,[rsi]
mov       r13d,[rsi+8]
lea       r12,[rsp+28]
mov       dword ptr [rsp+44],4
xor       r8d,r8d
mov       [rbx],r8d
test      r14d,r14d
je        near ptr M02_L13
M02_L00
 
mov       [rdi],rbp
mov       [rdi+8],r14d
mov       [rsi],r15
mov       [rsi+8],r13d
lea       r8,[rsp+68]
lea       r9,[rsp+60]
mov       rcx,rdi
mov       rdx,rsi
call      qword ptr [7FF9F60DE628]; System.Convert.TryDecodeFromUtf16(System.ReadOnlySpan`1, System.Span`1, Int32 ByRef, Int32 ByRef)
mov       edx,[rsp+60]
add       [rbx],edx
test      eax,eax
jne       near ptr M02_L13
mov       eax,[rsp+68]
cmp       eax,r14d
ja        near ptr M02_L18
mov       edx,eax
lea       rbp,[rbp+rdx*2]
sub       r14d,eax
mov       eax,[rsp+60]
cmp       eax,r13d
ja        near ptr M02_L18
mov       edx,eax
add       r15,rdx
sub       r13d,eax
test      r14d,r14d
je        near ptr M02_L21
movzx     eax,word ptr [rbp]
cmp       eax,20
je        short M02_L01
cmp       eax,9
je        short M02_L01
cmp       eax,0D
je        short M02_L01
cmp       eax,0A
je        short M02_L01
mov       rax,r12
mov       r11d,[rsp+44]
mov       r10d,r11d
xor       ecx,ecx
xor       r9d,r9d
test      r14d,r14d
jle       near ptr M02_L17
jmp       near ptr M02_L05
nop
M02_L01
 
mov       r10d,1
cmp       r14d,1
je        short M02_L03
M02_L02
 
cmp       r10d,r14d
jae       near ptr M02_L21
mov       eax,r10d
movzx     eax,word ptr [rbp+rax*2]
cmp       eax,20
je        near ptr M02_L15
cmp       eax,9
je        near ptr M02_L15
cmp       eax,0D
je        near ptr M02_L15
cmp       eax,0A
je        near ptr M02_L15
M02_L03
 
cmp       r10d,r14d
ja        near ptr M02_L18
mov       eax,r10d
lea       rbp,[rbp+rax*2]
sub       r14d,r10d
mov       ecx,[rsp+60]
mov       edx,55555556
mov       eax,edx
imul      dword ptr [rsp+60]
mov       r9d,edx
shr       r9d,1F
add       r9d,edx
lea       r9d,[r9+r9*2]
sub       ecx,r9d
jne       near ptr M02_L16
M02_L04
 
test      r14d,r14d
je        near ptr M02_L13
jmp       near ptr M02_L00
M02_L05
 
mov       r8d,r9d
movzx     r8d,word ptr [rbp+r8*2]
cmp       r8d,20
je        short M02_L06
cmp       r8d,9
je        short M02_L06
cmp       r8d,0D
je        short M02_L06
cmp       r8d,0A
je        short M02_L06
lea       edx,[rcx+1]
cmp       ecx,r10d
jae       near ptr M02_L21
mov       ecx,ecx
mov       [rax+rcx*2],r8w
cmp       edx,r10d
mov       ecx,edx
je        short M02_L07
M02_L06
 
inc       r9d
cmp       r9d,r14d
jge       near ptr M02_L17
jmp       short M02_L05
M02_L07
 
lea       eax,[r9+1]
mov       [rsp+5C],eax
M02_L08
 
test      cl,3
jne       near ptr M02_L09
cmp       ecx,r11d
ja        near ptr M02_L18
mov       r11d,ecx
mov       [rsi],r15
mov       [rsi+8],r13d
mov       [rsp+30],r12
mov       [rsp+44],r11d
mov       [rsp+38],r11d
lea       rcx,[rsp+30]
lea       r9,[rsp+48]
lea       r8,[rsp+50]
mov       rdx,rsi
call      qword ptr [7FF9F60DE628]; System.Convert.TryDecodeFromUtf16(System.ReadOnlySpan`1, System.Span`1, Int32 ByRef, Int32 ByRef)
test      eax,eax
je        short M02_L09
mov       eax,[rsp+48]
add       [rbx],eax
mov       eax,[rsp+5C]
cmp       eax,r14d
ja        near ptr M02_L18
mov       edx,eax
lea       rbp,[rbp+rdx*2]
sub       r14d,eax
mov       eax,[rsp+48]
cmp       eax,r13d
ja        near ptr M02_L18
mov       edx,eax
add       rdx,r15
mov       r15,rdx
sub       r13d,eax
mov       ecx,[rsp+48]
mov       edx,55555556
mov       eax,edx
imul      dword ptr [rsp+48]
mov       eax,edx
shr       eax,1F
add       eax,edx
lea       eax,[rax+rax*2]
sub       ecx,eax
jne       near ptr M02_L19
jmp       near ptr M02_L04
M02_L09
 
xor       eax,eax
mov       [rbx],eax
mov       rcx,50AF7984884E
cmp       [rsp+70],rcx
je        short M02_L10
call      CORINFO_HELP_FAIL_FAST
M02_L10
 
nop
add       rsp,78
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M02_L11
 
inc       eax
M02_L12
 
cmp       eax,r14d
jl        short M02_L20
M02_L13
 
mov       eax,1
mov       rcx,50AF7984884E
cmp       [rsp+70],rcx
je        short M02_L14
call      CORINFO_HELP_FAIL_FAST
M02_L14
 
nop
add       rsp,78
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M02_L15
 
inc       r10d
cmp       r10d,r14d
jne       near ptr M02_L02
jmp       near ptr M02_L03
M02_L16
 
test      r14d,r14d
je        near ptr M02_L04
jmp       short M02_L09
M02_L17
 
mov       eax,r14d
mov       [rsp+5C],eax
jmp       near ptr M02_L08
M02_L18
 
call      qword ptr [7FF9F601E9D0]
int       3
M02_L19
 
xor       eax,eax
jmp       short M02_L12
M02_L20
 
cmp       eax,r14d
jae       short M02_L21
mov       ecx,eax
movzx     ecx,word ptr [rbp+rcx*2]
cmp       ecx,20
je        short M02_L11
cmp       ecx,9
je        short M02_L11
cmp       ecx,0D
je        near ptr M02_L11
cmp       ecx,0A
sete      cl
movzx     ecx,cl
test      ecx,ecx
jne       near ptr M02_L11
jmp       near ptr M02_L09
M02_L21
 
call      CORINFO_HELP_RNGCHKFAIL
int       3